Se connecter avec
S'enregistrer | Connectez-vous

Chemin d'accés universel

Dernière réponse : dans Programmation

Bonjour,

J'ai réalisé une étude pour un client, ce dernier n'étant vraiment pas familier avec l'utilisation de nos logiciels de calcul. Je lui ai conçu un classeur excel clic boutons, ces derniers appelant des macros modifiant les paramètres de l'étude, les cas de charge et autre notions sympathiques.

Je me suis rendu compte lors de l'élaboration de ce classeur qu'il ne fonctionnerai que sur mon poste de travail en effet les macros pointent sur des chemins de fichiers bien spécifiques.

Je sais qu'il existe un moyen sur VBA pour rechercher un fichier donné (avec des "\" ou des "." si j'en crois les différends codes que j'ai retrouvé sur le net).

Voici le début d'une des premières macros trés basique, je me contente d'ouvrir ma banque sur excel :

  1. Workbooks.OpenText Filename:="F:\Plaque_param\Plaque_excell.dat", Origin:= _
  2. xlWindows, StartRow:=1, DataType:=xlFixedWidth, FieldInfo:=Array(Array(0, _
  3. 1), Array(77, 1))
  4. Application.DisplayAlerts = False
  5. ActiveWorkbook.SaveAs Filename:="F:\Plaque_param\Plaque_Traction.dat", _
  6. FileFormat:=xlText, CreateBackup:=False
  7. ActiveWorkbook.Close
  8. Application.DisplayAlerts = True


Il s'agirait de retrouver ce fichier Plaque_excell.dat sans préciser son chemin, pourriez vous m'indiquer une adresse voire un site développant ce genre de notions?

Espérant correspondre à vos critéres,

Marc

Autres pages sur : chemin acces universel

Lassé par la pub ? Créez un compte

Meilleure solution

Expert Programmation

Salut,
Ben non, on ne va pas te donner un autre site ! On va le faire ici.

Soit tu t'arranges pour faire ouvrir le classeur par l'utilisateur (Jette un oeil sur la fonction Application.GetOpenFilename()), soit tu t'organises pour que l'emplacement de tes différents fichiers soit relatif.

Par exemple, j'observe que le fichier de la ligne 1 à le même chemin que celui de la ligne 5.


Re,
Je te remercie pour cette réponse trés rapide, j'ai utilisé le mode relatif vu que c'est assez clic bouton comme ça

Pour ceux qui trouve ça par google :

  1. [color=#ff0004]chemin = ThisWorkbook.Path
  2. Workbooks.Open Filename:=chemin & "\Plaque_excell.dat"[/color]
  3. Range("A16").Select
  4. ActiveCell.FormulaR1C1 = "ABRE '/y' '0.'=>Frettage douille-bride"
  5. Range("A183").Select
  6. ActiveCell.FormulaR1C1 = "!.MCT"
  7. Range("A184").Select
  8. ActiveCell.FormulaR1C1 = "!groupe 5 gtar 6 opt 3"
  9. Range("A185").Select
  10. Application.DisplayAlerts = False
  11. ActiveWorkbook.SaveAs Filename:=[#ff004]chemin & "\Plaque_Traction_SF.dat"[/#ff004], _
  12. FileFormat:=xlText, CreateBackup:=False
  13. ActiveWorkbook.Close
  14. Application.DisplayAlerts = True


Voila, donc j'ai tenté de mettre en rouge, ce qui est entre les [#ff0004], les modifications apportée à la macro pour retrouve le fichier lorsqu'il se trouve dans le même dossier que le classeur contenant les macros (ThisWorkbook.Path).

J'enverrai au client un dossier contenant les banques (.dat) et le classeur, j'ai testé sur différends disques ça n'a pas l'air de poser de problème.

Seul histoire qui me préoccupe c'est ces "ActiveWorkbook" et le "ThisWorkbook" qui pourraient peut être aboutir à des erreurs je ne sais pas j'ai découvert VBA hier aprem.

En tout cas merci à toi Zeb j'espère qu'ils te paient par ici vu sinon dis moi toujours je connais uen entreprise sur Liège qui recherche un programmeur efficace de macro excell. Enfin faut vouloir aller chez les Belges déjà quelle idée.

Have a good day
Lassé par la pub ? Créez un compte