acces à dossier (vba)

Le
srogeau
bonjour a tous
le code ci dessous me permets d'afficher des fichiers images a partir de la
valeur d'une combox ,pour l'instant les images,l'userform sont dans le meme
dossier

Private Sub ComboBox1_Change()
'Le mot clé "Me" remplace le nom de l'userform ("formimg")
nom = Me.ComboBox1.Value
On Error Resume Next
fichier = ActiveWorkbook.Path & "" & nom & ".jpg"
Me.Image1.Picture = LoadPicture(fichier)
End Sub

je voudrais afficher des vues qui sont dans 1 autre dossier ex: cmes
documentsmes imagesbateau
comment indiquer ce chemin
j'ai eu une reponse ,mais trop abregee pour comprendre
merci de votre aide

  • Partager ce contenu :
Vos réponses
Trier par : date / pertinence
Jacky
Le #1544914
Bonjour

fichier = "c:mes documentsmes imagesbateau" & nom & ".jpg"

ou tout autre chemin valide


Salutations
JJ


"Srogeau" news:
bonjour a tous
le code ci dessous me permets d'afficher des fichiers images a partir de
la

valeur d'une combox ,pour l'instant les images,l'userform sont dans le
meme

dossier

Private Sub ComboBox1_Change()
'Le mot clé "Me" remplace le nom de l'userform ("formimg")
nom = Me.ComboBox1.Value
On Error Resume Next
fichier = ActiveWorkbook.Path & "" & nom & ".jpg"
Me.Image1.Picture = LoadPicture(fichier)
End Sub

je voudrais afficher des vues qui sont dans 1 autre dossier ex: cmes
documentsmes imagesbateau
comment indiquer ce chemin
j'ai eu une reponse ,mais trop abregee pour comprendre
merci de votre aide




michdenis
Le #1544912
Bonjour Srogeau,

Remplace ceci
fichier = ActiveWorkbook.Path & "" & nom & ".jpg"

par cela en supposant que bureau est le nom d'un répertoire

fichier = "cmes documentsmes imagesbateau" & "" & nom & ".jpg"



Salutations!



"Srogeau" bonjour a tous
le code ci dessous me permets d'afficher des fichiers images a partir de la
valeur d'une combox ,pour l'instant les images,l'userform sont dans le meme
dossier

Private Sub ComboBox1_Change()
'Le mot clé "Me" remplace le nom de l'userform ("formimg")
nom = Me.ComboBox1.Value
On Error Resume Next
fichier = ActiveWorkbook.Path & "" & nom & ".jpg"
Me.Image1.Picture = LoadPicture(fichier)
End Sub

je voudrais afficher des vues qui sont dans 1 autre dossier ex: cmes
documentsmes imagesbateau
comment indiquer ce chemin
j'ai eu une reponse ,mais trop abregee pour comprendre
merci de votre aide
Jacky
Le #1544910
Bonjour Denis

fichier = "cmes documentsmes imagesbateau" & "" & nom & ".jpg"
Tu es sur Denis ????

Salutations
JJ

"michdenis" news:
Bonjour Srogeau,

Remplace ceci
fichier = ActiveWorkbook.Path & "" & nom & ".jpg"

par cela en supposant que bureau est le nom d'un répertoire

fichier = "cmes documentsmes imagesbateau" & "" & nom & ".jpg"



Salutations!



"Srogeau" news:

bonjour a tous
le code ci dessous me permets d'afficher des fichiers images a partir de
la

valeur d'une combox ,pour l'instant les images,l'userform sont dans le
meme

dossier

Private Sub ComboBox1_Change()
'Le mot clé "Me" remplace le nom de l'userform ("formimg")
nom = Me.ComboBox1.Value
On Error Resume Next
fichier = ActiveWorkbook.Path & "" & nom & ".jpg"
Me.Image1.Picture = LoadPicture(fichier)
End Sub

je voudrais afficher des vues qui sont dans 1 autre dossier ex: cmes
documentsmes imagesbateau
comment indiquer ce chemin
j'ai eu une reponse ,mais trop abregee pour comprendre
merci de votre aide





michdenis
Le #1544906
Bonjour Jacky,

si tu parles des 2 points inexistants après le C: ... j'ai seulement fait un copier-coller de sa ligne de code...


Salutations!



fichier = "cmes documentsmes imagesbateau" & "" & nom & ".jpg"
Tu es sur Denis ????

Salutations
JJ

"michdenis" news:
Bonjour Srogeau,

Remplace ceci
fichier = ActiveWorkbook.Path & "" & nom & ".jpg"

par cela en supposant que bureau est le nom d'un répertoire

fichier = "cmes documentsmes imagesbateau" & "" & nom & ".jpg"



Salutations!



"Srogeau" news:

bonjour a tous
le code ci dessous me permets d'afficher des fichiers images a partir de
la

valeur d'une combox ,pour l'instant les images,l'userform sont dans le
meme

dossier

Private Sub ComboBox1_Change()
'Le mot clé "Me" remplace le nom de l'userform ("formimg")
nom = Me.ComboBox1.Value
On Error Resume Next
fichier = ActiveWorkbook.Path & "" & nom & ".jpg"
Me.Image1.Picture = LoadPicture(fichier)
End Sub

je voudrais afficher des vues qui sont dans 1 autre dossier ex: cmes
documentsmes imagesbateau
comment indiquer ce chemin
j'ai eu une reponse ,mais trop abregee pour comprendre
merci de votre aide





Clément Marcotte
Le #1544902
Cela ne dit pas ce que cela veut, puis cela accuse de faire des
réponses trop abrégées.

"Srogeau" news:
bonjour a tous
le code ci dessous me permets d'afficher des fichiers images a
partir de la

valeur d'une combox ,pour l'instant les images,l'userform sont dans
le meme

dossier

Private Sub ComboBox1_Change()
'Le mot clé "Me" remplace le nom de l'userform ("formimg")
nom = Me.ComboBox1.Value
On Error Resume Next
fichier = ActiveWorkbook.Path & "" & nom & ".jpg"
Me.Image1.Picture = LoadPicture(fichier)
End Sub

je voudrais afficher des vues qui sont dans 1 autre dossier ex:
cmes

documentsmes imagesbateau
comment indiquer ce chemin
j'ai eu une reponse ,mais trop abregee pour comprendre
merci de votre aide




Clément Marcotte
Le #1544900
Et pis dan l'autre question, ses fichiers n'avaient pas d'extension.


"Srogeau" news:
bonjour a tous
le code ci dessous me permets d'afficher des fichiers images a
partir de la

valeur d'une combox ,pour l'instant les images,l'userform sont dans
le meme

dossier

Private Sub ComboBox1_Change()
'Le mot clé "Me" remplace le nom de l'userform ("formimg")
nom = Me.ComboBox1.Value
On Error Resume Next
fichier = ActiveWorkbook.Path & "" & nom & ".jpg"
Me.Image1.Picture = LoadPicture(fichier)
End Sub

je voudrais afficher des vues qui sont dans 1 autre dossier ex:
cmes

documentsmes imagesbateau
comment indiquer ce chemin
j'ai eu une reponse ,mais trop abregee pour comprendre
merci de votre aide




Jacky
Le #1544441
Re
Comme quoi 2 petits point peuvent rendre pas mal de chose inutile ;o))

Dit moi Denis, le 20/05/04 23.39 sur le post "Recherche dans plusieurs
feuilles", je suis resté sur ma faim, depuis je patauge dans des codes sans
fin et ne trouve pas vraiment une bonne solution. Si tu as le temps
pourrais-tu revoir la chose.Clément aussi, si tu est toujours en ligne,
jettes un oeil SVP, ensemble ont pourra trouver quelque chose de correct.

Bonne journée
JJ

"michdenis" news:
Bonjour Jacky,

si tu parles des 2 points inexistants après le C: ... j'ai seulement fait
un copier-coller de sa ligne de code...



Salutations!



fichier = "cmes documentsmes imagesbateau" & "" & nom & ".jpg"
Tu es sur Denis ????

Salutations
JJ

"michdenis" news:
Bonjour Srogeau,

Remplace ceci
fichier = ActiveWorkbook.Path & "" & nom & ".jpg"

par cela en supposant que bureau est le nom d'un répertoire

fichier = "cmes documentsmes imagesbateau" & "" & nom & ".jpg"



Salutations!



"Srogeau" news:

bonjour a tous
le code ci dessous me permets d'afficher des fichiers images a partir
de


la
valeur d'une combox ,pour l'instant les images,l'userform sont dans le
meme

dossier

Private Sub ComboBox1_Change()
'Le mot clé "Me" remplace le nom de l'userform ("formimg")
nom = Me.ComboBox1.Value
On Error Resume Next
fichier = ActiveWorkbook.Path & "" & nom & ".jpg"
Me.Image1.Picture = LoadPicture(fichier)
End Sub

je voudrais afficher des vues qui sont dans 1 autre dossier ex: cmes
documentsmes imagesbateau
comment indiquer ce chemin
j'ai eu une reponse ,mais trop abregee pour comprendre
merci de votre aide










michdenis
Le #1544408
Bonjour Jacky,

Essaie ceci :

Il est pris pour acquis que tes noms apparaissent dans la plage définie comme suit : Range("C5:T14") et
Range("C18:O27") dans chacune des feuilles le cas échéant ....

Les résultats vont s'afficher dans une feuille ajoutée nommée "Résultat"

'----------------------------------
Sub NomsEtNombre()

Dim Shr As Worksheet, Sh As Worksheet
Dim Sh1 As Worksheet, Rg As Range
Dim Rg1 As Range, C As Range
Dim A As Integer, Nb As Integer

Application.ScreenUpdating = False
On Error Resume Next
Application.DisplayAlerts = False
Worksheets("Résultat").Delete
Set Shr = Worksheets.Add(After:=Sheets(Sheets.Count))
Shr.Name = "Résultat"

For Each Sh In Worksheets
If Sh.Name <> "Résultat" Then
Set Rg1 = Union(Sh.Range("C5:T14"), Sh.Range("C18:O27"))
For Each C In Rg1
If IsError(Application.Match(C, Shr.Range("A1:A5000"), 0)) Then
On Error GoTo 0
For Each Sh1 In Worksheets
If Sh.Name <> "Résultat" Then
Set Rg = Sh1.Range("C5:T27")
Nb = Nb + Application.WorksheetFunction.CountIf(Rg, C)
End If
Next
If Nb > 0 Then
A = A + 1
Shr.Range("A" & A) = C
Shr.Range("B" & A) = Nb
Nb = 0
End If
End If
Next
End If
Next
With Shr
.Range("A1").Sort Key1:=.Range("A1")
.Range("A:B").EntireColumn.AutoFit
End With

Set Shr = Nothing: Set Sh1 = Nothing: Set Sh = Nothing
Set Rg = Nothing: Set Rg1 = Nothing: Set C = Nothing

End Sub
'----------------------------------


Salutations!




"Jacky" Re
Comme quoi 2 petits point peuvent rendre pas mal de chose inutile ;o))

Dit moi Denis, le 20/05/04 23.39 sur le post "Recherche dans plusieurs
feuilles", je suis resté sur ma faim, depuis je patauge dans des codes sans
fin et ne trouve pas vraiment une bonne solution. Si tu as le temps
pourrais-tu revoir la chose.Clément aussi, si tu est toujours en ligne,
jettes un oeil SVP, ensemble ont pourra trouver quelque chose de correct.

Bonne journée
JJ

"michdenis" news:
Bonjour Jacky,

si tu parles des 2 points inexistants après le C: ... j'ai seulement fait
un copier-coller de sa ligne de code...



Salutations!



fichier = "cmes documentsmes imagesbateau" & "" & nom & ".jpg"
Tu es sur Denis ????

Salutations
JJ

"michdenis" news:
Bonjour Srogeau,

Remplace ceci
fichier = ActiveWorkbook.Path & "" & nom & ".jpg"

par cela en supposant que bureau est le nom d'un répertoire

fichier = "cmes documentsmes imagesbateau" & "" & nom & ".jpg"



Salutations!



"Srogeau" news:

bonjour a tous
le code ci dessous me permets d'afficher des fichiers images a partir
de


la
valeur d'une combox ,pour l'instant les images,l'userform sont dans le
meme

dossier

Private Sub ComboBox1_Change()
'Le mot clé "Me" remplace le nom de l'userform ("formimg")
nom = Me.ComboBox1.Value
On Error Resume Next
fichier = ActiveWorkbook.Path & "" & nom & ".jpg"
Me.Image1.Picture = LoadPicture(fichier)
End Sub

je voudrais afficher des vues qui sont dans 1 autre dossier ex: cmes
documentsmes imagesbateau
comment indiquer ce chemin
j'ai eu une reponse ,mais trop abregee pour comprendre
merci de votre aide










Jacky
Le #1545909
Bonjour Denis

J'ai adapté le code de cette façon:

If Left(Sh.Name, 4) = Left(Year(Now), 4) Then
''''''pour uniquement voir les feuilles qui ont pour début de nom l'année en
cours qui sont générées automatiquement par un autre code
''''''à la place de ' If Sh.Name <> "Résultat" Then
Set Rg1 = Union(Sh.Range("C5:T14"), Sh.Range("C18:O27"))
For Each C In Rg1
If C <> "" Then '''
'''''''rajouté pour faire le test uniquement sur les cellules non vides
sinon résultat donne des chiffres incohérents et met + de 5 minutes pour la
recherche
If IsError(Application.Match(C, Shr.Range("A1:A5000"), 0)) Then
On Error GoTo 0
For Each Sh1 In Worksheets
If Left(Sh.Name, 4) = Left(Year(Now), 4) Then
''''''pour uniquement voir les feuilles qui ont pour début de nom l'année en
cours
''''''à la place de ' If Sh.Name <> "Résultat" Then
Set Rg = Sh1.Range("C5:T27")

Cela est-il correct???
Pourrais-tu expliquer ces 2 codes:
If IsError(Application.Match(C, Shr.Range("A1:A5000"), 0)) Then
et
Set Rg = Sh1.Range("C5:T27") '''''' pourquoi le C5:T27 ??

Sinon, cela semble fonctionner correctement, et je te remercie d'avoir
consacré du temps à ma demande.

Bonne journée
JJ

"michdenis" news:
Bonjour Jacky,

Essaie ceci :

Il est pris pour acquis que tes noms apparaissent dans la plage définie
comme suit : Range("C5:T14") et

Range("C18:O27") dans chacune des feuilles le cas échéant ....

Les résultats vont s'afficher dans une feuille ajoutée nommée "Résultat"

'----------------------------------
Sub NomsEtNombre()

Dim Shr As Worksheet, Sh As Worksheet
Dim Sh1 As Worksheet, Rg As Range
Dim Rg1 As Range, C As Range
Dim A As Integer, Nb As Integer

Application.ScreenUpdating = False
On Error Resume Next
Application.DisplayAlerts = False
Worksheets("Résultat").Delete
Set Shr = Worksheets.Add(After:=Sheets(Sheets.Count))
Shr.Name = "Résultat"

For Each Sh In Worksheets
If Sh.Name <> "Résultat" Then
Set Rg1 = Union(Sh.Range("C5:T14"), Sh.Range("C18:O27"))
For Each C In Rg1
If IsError(Application.Match(C, Shr.Range("A1:A5000"), 0))
Then

On Error GoTo 0
For Each Sh1 In Worksheets
If Sh.Name <> "Résultat" Then
Set Rg = Sh1.Range("C5:T27")
Nb = Nb +
Application.WorksheetFunction.CountIf(Rg, C)

End If
Next
If Nb > 0 Then
A = A + 1
Shr.Range("A" & A) = C
Shr.Range("B" & A) = Nb
Nb = 0
End If
End If
Next
End If
Next
With Shr
.Range("A1").Sort Key1:=.Range("A1")
.Range("A:B").EntireColumn.AutoFit
End With

Set Shr = Nothing: Set Sh1 = Nothing: Set Sh = Nothing
Set Rg = Nothing: Set Rg1 = Nothing: Set C = Nothing

End Sub
'----------------------------------


Salutations!




"Jacky" news:eYbn$%

Re
Comme quoi 2 petits point peuvent rendre pas mal de chose inutile ;o))

Dit moi Denis, le 20/05/04 23.39 sur le post "Recherche dans plusieurs
feuilles", je suis resté sur ma faim, depuis je patauge dans des codes
sans

fin et ne trouve pas vraiment une bonne solution. Si tu as le temps
pourrais-tu revoir la chose.Clément aussi, si tu est toujours en ligne,
jettes un oeil SVP, ensemble ont pourra trouver quelque chose de correct.

Bonne journée
JJ

"michdenis" news:
Bonjour Jacky,

si tu parles des 2 points inexistants après le C: ... j'ai seulement
fait


un copier-coller de sa ligne de code...


Salutations!



fichier = "cmes documentsmes imagesbateau" & "" & nom & ".jpg"
Tu es sur Denis ????

Salutations
JJ

"michdenis" news:
Bonjour Srogeau,

Remplace ceci
fichier = ActiveWorkbook.Path & "" & nom & ".jpg"

par cela en supposant que bureau est le nom d'un répertoire

fichier = "cmes documentsmes imagesbateau" & "" & nom & ".jpg"



Salutations!



"Srogeau" news:

bonjour a tous
le code ci dessous me permets d'afficher des fichiers images a partir
de


la
valeur d'une combox ,pour l'instant les images,l'userform sont dans le
meme

dossier

Private Sub ComboBox1_Change()
'Le mot clé "Me" remplace le nom de l'userform ("formimg")
nom = Me.ComboBox1.Value
On Error Resume Next
fichier = ActiveWorkbook.Path & "" & nom & ".jpg"
Me.Image1.Picture = LoadPicture(fichier)
End Sub

je voudrais afficher des vues qui sont dans 1 autre dossier ex: cmes
documentsmes imagesbateau
comment indiquer ce chemin
j'ai eu une reponse ,mais trop abregee pour comprendre
merci de votre aide















michdenis
Le #1545899
Bonjour Jacky,

If IsError(Application.Match(C, Shr.Range("A1:A5000"), 0)) Then

*** Cette ligne s'assure que de ne pas refaire le décompte pour un nom qui a déjà été recencé dans la feuille
"Résultat". À chaque fois que la procédure trouve une donnée dans la plage de données spécifiées, elle vérifie que ce
nom n'a pas déjà recencé dans la feuille "résultat."


Set Rg1 = Union(Sh.Range("C5:T14"), Sh.Range("C18:O27"))
For Each C In Rg1
If C <> "" Then '''
'''''''rajouté pour faire le test uniquement sur les cellules non vides
sinon résultat donne des chiffres incohérents et met + de 5 minutes pour la
recherche

Ce n'est pas nécessaire si tu utilises ceci :

*** Set Rg1 = Union(Sh.Range("C5:T14"), Sh.Range("C18:O27")) _
.SpecialCells(xlCellTypeConstants, xlTextValues)


If Left(Sh.Name, 4) = Left(Year(Now), 4) Then
''''''pour uniquement voir les feuilles qui ont pour début de nom l'année en
cours

*** Il me semble que je n'ai pas vu cette restriction dans ta demande initiale !



Set Rg = Sh1.Range("C5:T27") '''''' pourquoi le C5:T27 ??

*** Cette ligne provient des bornes de cette plage (Union(Sh.Range("C5:T14"), Sh.Range("C18:O27"))) pour englober cette
plage de cellulles dans une plage unique pour pouvoir utiliser de la fonction CountIf. Cette dernière n'apprécie guère
des plages de cellules non consécutives.


Salutations!



"Jacky" Bonjour Denis

J'ai adapté le code de cette façon:

If Left(Sh.Name, 4) = Left(Year(Now), 4) Then
''''''pour uniquement voir les feuilles qui ont pour début de nom l'année en
cours qui sont générées automatiquement par un autre code
''''''à la place de ' If Sh.Name <> "Résultat" Then
Set Rg1 = Union(Sh.Range("C5:T14"), Sh.Range("C18:O27"))
For Each C In Rg1
If C <> "" Then '''
'''''''rajouté pour faire le test uniquement sur les cellules non vides
sinon résultat donne des chiffres incohérents et met + de 5 minutes pour la
recherche
If IsError(Application.Match(C, Shr.Range("A1:A5000"), 0)) Then
On Error GoTo 0
For Each Sh1 In Worksheets
If Left(Sh.Name, 4) = Left(Year(Now), 4) Then
''''''pour uniquement voir les feuilles qui ont pour début de nom l'année en
cours
''''''à la place de ' If Sh.Name <> "Résultat" Then
Set Rg = Sh1.Range("C5:T27")

Cela est-il correct???
Pourrais-tu expliquer ces 2 codes:
If IsError(Application.Match(C, Shr.Range("A1:A5000"), 0)) Then
et
Set Rg = Sh1.Range("C5:T27") '''''' pourquoi le C5:T27 ??

Sinon, cela semble fonctionner correctement, et je te remercie d'avoir
consacré du temps à ma demande.

Bonne journée
JJ

"michdenis" news:
Bonjour Jacky,

Essaie ceci :

Il est pris pour acquis que tes noms apparaissent dans la plage définie
comme suit : Range("C5:T14") et

Range("C18:O27") dans chacune des feuilles le cas échéant ....

Les résultats vont s'afficher dans une feuille ajoutée nommée "Résultat"

'----------------------------------
Sub NomsEtNombre()

Dim Shr As Worksheet, Sh As Worksheet
Dim Sh1 As Worksheet, Rg As Range
Dim Rg1 As Range, C As Range
Dim A As Integer, Nb As Integer

Application.ScreenUpdating = False
On Error Resume Next
Application.DisplayAlerts = False
Worksheets("Résultat").Delete
Set Shr = Worksheets.Add(After:=Sheets(Sheets.Count))
Shr.Name = "Résultat"

For Each Sh In Worksheets
If Sh.Name <> "Résultat" Then
Set Rg1 = Union(Sh.Range("C5:T14"), Sh.Range("C18:O27"))
For Each C In Rg1
If IsError(Application.Match(C, Shr.Range("A1:A5000"), 0))
Then

On Error GoTo 0
For Each Sh1 In Worksheets
If Sh.Name <> "Résultat" Then
Set Rg = Sh1.Range("C5:T27")
Nb = Nb +
Application.WorksheetFunction.CountIf(Rg, C)

End If
Next
If Nb > 0 Then
A = A + 1
Shr.Range("A" & A) = C
Shr.Range("B" & A) = Nb
Nb = 0
End If
End If
Next
End If
Next
With Shr
.Range("A1").Sort Key1:=.Range("A1")
.Range("A:B").EntireColumn.AutoFit
End With

Set Shr = Nothing: Set Sh1 = Nothing: Set Sh = Nothing
Set Rg = Nothing: Set Rg1 = Nothing: Set C = Nothing

End Sub
'----------------------------------


Salutations!




"Jacky" news:eYbn$%

Re
Comme quoi 2 petits point peuvent rendre pas mal de chose inutile ;o))

Dit moi Denis, le 20/05/04 23.39 sur le post "Recherche dans plusieurs
feuilles", je suis resté sur ma faim, depuis je patauge dans des codes
sans

fin et ne trouve pas vraiment une bonne solution. Si tu as le temps
pourrais-tu revoir la chose.Clément aussi, si tu est toujours en ligne,
jettes un oeil SVP, ensemble ont pourra trouver quelque chose de correct.

Bonne journée
JJ

"michdenis" news:
Bonjour Jacky,

si tu parles des 2 points inexistants après le C: ... j'ai seulement
fait


un copier-coller de sa ligne de code...


Salutations!



fichier = "cmes documentsmes imagesbateau" & "" & nom & ".jpg"
Tu es sur Denis ????

Salutations
JJ

"michdenis" news:
Bonjour Srogeau,

Remplace ceci
fichier = ActiveWorkbook.Path & "" & nom & ".jpg"

par cela en supposant que bureau est le nom d'un répertoire

fichier = "cmes documentsmes imagesbateau" & "" & nom & ".jpg"



Salutations!



"Srogeau" news:

bonjour a tous
le code ci dessous me permets d'afficher des fichiers images a partir
de


la
valeur d'une combox ,pour l'instant les images,l'userform sont dans le
meme

dossier

Private Sub ComboBox1_Change()
'Le mot clé "Me" remplace le nom de l'userform ("formimg")
nom = Me.ComboBox1.Value
On Error Resume Next
fichier = ActiveWorkbook.Path & "" & nom & ".jpg"
Me.Image1.Picture = LoadPicture(fichier)
End Sub

je voudrais afficher des vues qui sont dans 1 autre dossier ex: cmes
documentsmes imagesbateau
comment indiquer ce chemin
j'ai eu une reponse ,mais trop abregee pour comprendre
merci de votre aide















Poster une réponse
Anonyme