Bonjour à toutes et à tous,
Tout d’abord je vous souhaite un très beau dimanche.
Je me tourne à nouveau vers vous pour un problème que je n’arrive pas à résoudre malgré mes recherches et essais.
Je travaille sur 2 ordinateurs à des heures différentes :
La journée en horaires normaux, sur mon, ordi principal dans mon bureau et,
Le soir sur l’ordinateur dans ma chambre.
Par exemple, pour ouvrir un fichier, voici ci-dessous le code vba, que j’utilise dans mon fichier déjà ouvert sur mon ordi principal :
Code:
Dim wb As Workbook
Dim ws As Worksheet
Set wb = Workbooks.Open("C:\Users\lionel\Desktop\IsiTel_dossier\01 ImmobRdV NF\isitelFacturation Charlotte.xlsm")
Set ws = wb.Worksheets(1)
Mais voilà, le chemin n’est pas le même dans l’ordinateur de ma chambre (ci-dessous le chemin) :
C:\Users\lionel\Documents\isiTel_dossier\01 ImmobRdV NF\isitelFacturation Charlotte.xlsm
Est-il possible de rechercher et d’ouvrir un fichier en mettant dans le code vba uniquement son nom ?
Exemple :
Code:
Dim wb As Workbook
Dim ws As Worksheet
Set wb = Workbooks.Open("C:\isitelFacturation Charlotte.xlsm")
Set ws = wb.Worksheets(1)
Pas du tout certain que ce soit possible mais ça m'arrangerait bien
Avec mes remerciements déjà pour m'avoir lu,
Amicalement,
Arthour973,
Bonjour à toutes et à tous,
Tout d’abord je vous souhaite un très beau dimanche.
Je me tourne à nouveau vers vous pour un problème que je n’arrive pas à résoudre malgré mes recherches et essais.
Je travaille sur 2 ordinateurs à des heures différentes :
La journée en horaires normaux, sur mon, ordi principal dans mon bureau et,
Le soir sur l’ordinateur dans ma chambre.
Par exemple, pour ouvrir un fichier, voici ci-dessous le code vba, que j’utilise dans mon fichier déjà ouvert sur mon ordi principal :
Code:
Dim wb As Workbook
Dim ws As Worksheet
Set wb = Workbooks.Open("C:\Users\lionel\Desktop\IsiTel_dossier\01 ImmobRdV NF\isitelFacturation Charlotte.xlsm")
Set ws = wb.Worksheets(1)
Mais voilà, le chemin n’est pas le même dans l’ordinateur de ma chambre (ci-dessous le chemin) :
C:\Users\lionel\Documents\isiTel_dossier\01 ImmobRdV NF\isitelFacturation Charlotte.xlsm
Est-il possible de rechercher et d’ouvrir un fichier en mettant dans le code vba uniquement son nom ?
Exemple :
Code:
Dim wb As Workbook
Dim ws As Worksheet
Set wb = Workbooks.Open("C:\isitelFacturation Charlotte.xlsm")
Set ws = wb.Worksheets(1)
Pas du tout certaine que ce soit possible mais ça m'arrangerait bien
Avec mes remerciements déjà pour m'avoir lu,
Amicalement,
Arthour973,
Option Explicit
Sub toto()
Dim filetoopen As Variant
filetoopen = Application.GetOpenFilename("fichier excel , *.xlsm")
If filetoopen <> False Then
MsgBox "Open " & filetoopen
End If
End Sub
il peut bien sur etre nécessaire de naviguer dans l'arborescence locale
Vu que tu as le même user sur les 2 PC, le plus simple est d'utiliser le même chemin !
Une autre solution consiste à utiliser un chemin relatif identique entre le fichier macro et le fichier à ouvrir
Bonjour Patrice33740,
Merci pour ta réponse et suggestion.
J'avais vu cela mais je voulais savoir s'il est possible de rechercher et d’ouvrir un fichier en mettant dans le code vba uniquement son nom ?
Car cela me sera utile pour un autre ordi qui n'a pas le même chemin
Le risque est qu'il y ait plusieurs fichiers avec le même nom !
Utiliser un répertoire relatif est le plus simple et le plus portable.
Cependant, il est possible de chercher un fichier (par exemple avec le FSO) mais c'est risqué et ça peut être long.
Il me semble plus efficace et plus sûr de chercher un chemin (avec une partie de son nom, par exemple \IsiTel_dossier\01 ImmobRdV NF\) avant d'y chercher le fichier.
Voir : http://warin.developpez.com/access/fichiers/
Bonjour à toutes et à tous,
Tout d’abord je vous souhaite un très beau dimanche.
Je me tourne à nouveau vers vous pour un problème que je n’arrive pas à résoudre malgré mes recherches et essais.
Je travaille sur 2 ordinateurs à des heures différentes :
La journée en horaires normaux, sur mon, ordi principal dans mon bureau et,
Le soir sur l’ordinateur dans ma chambre.
Par exemple, pour ouvrir un fichier, voici ci-dessous le code vba, que j’utilise dans mon fichier déjà ouvert sur mon ordi principal :
Code:
Dim wb As Workbook
Dim ws As Worksheet
Set wb = Workbooks.Open("C:\Users\lionel\Desktop\IsiTel_dossier\01 ImmobRdV NF\isitelFacturation Charlotte.xlsm")
Set ws = wb.Worksheets(1)
Mais voilà, le chemin n’est pas le même dans l’ordinateur de ma chambre (ci-dessous le chemin) :
C:\Users\lionel\Documents\isiTel_dossier\01 ImmobRdV NF\isitelFacturation Charlotte.xlsm
Est-il possible de rechercher et d’ouvrir un fichier en mettant dans le code vba uniquement son nom ?
Exemple :
Code:
Dim wb As Workbook
Dim ws As Worksheet
Set wb = Workbooks.Open("C:\isitelFacturation Charlotte.xlsm")
Set ws = wb.Worksheets(1)
Pas du tout certain que ce soit possible mais ça m'arrangerait bien
Avec mes remerciements déjà pour m'avoir lu,
Amicalement,
Arthour973,
Bonjour à tous,
Perso, je fais en testant le nom de l'ordinateur
MsgBox Environ("COMPUTERNAME") 'pour connaitre le nom du pc utilisé
If Environ("COMPUTERNAME") = "Maison" Then ' "Maison">>est un exemple
Set wb = Workbooks.Open("C:\isitelFacturation Charlotte.xlsm")
Else
Set wb = Workbooks.Open("C:\Users\lionel\Desktop\IsiTel_dossier\01 ImmobRdV NF\isitelFacturation Charlotte.xlsm")
End If