Editer un fichier texte avec Notepad de windows

DD05 Messages postés 53 Date d'inscription mercredi 11 août 2004 Statut Membre Dernière intervention 11 juin 2010 - 1 oct. 2005 à 14:52
crenaud76 Messages postés 4172 Date d'inscription mercredi 30 juillet 2003 Statut Membre Dernière intervention 9 juin 2006 - 2 oct. 2005 à 01:01
J'ai un fichier texte dont je connais le nom et le répertoire.

En cliquant sur un bouton je souhaiterai l'éditer grâce à l'éditeur notepad de Windows.

Le code suivant me permet de lancer l'application Notepad de windows
mais comment lui dire d'ouvrir en même temps mon fichier texte ?

Dim TaskID As Long

TaskID = Shell("notepad.exe", vbNormalFocus)



Merci d'avance.



DD

4 réponses

gwoui2 Messages postés 9 Date d'inscription jeudi 17 juin 2004 Statut Membre Dernière intervention 29 octobre 2005
1 oct. 2005 à 15:05
Bonjour,

Ceci devrait résoudre ton problème :

Dim TaskID As Long
Dim fichier As String





fichier = "C:\1.txt"
TaskID = Shell("notepad.exe " & fichier, vbNormalFocus)

Guillaume
0
cs_Willi Messages postés 2375 Date d'inscription jeudi 12 juillet 2001 Statut Modérateur Dernière intervention 15 décembre 2018 22
1 oct. 2005 à 17:22
je dirais meme mieux
si tu as des espace dans ton nom de fichier

Dim TaskID As Long
Dim fichier As String




fichier = "C:\mon fichier 1.txt"
TaskID = Shell("notepad.exe " & Chr$(34) & fichier & Chr$(34) , vbNormalFocus)

Si la réponse te conviens merci de l'accepter
0
gwoui2 Messages postés 9 Date d'inscription jeudi 17 juin 2004 Statut Membre Dernière intervention 29 octobre 2005
1 oct. 2005 à 17:49
Willi, si je ne m'abuse, les "Chr$(34)" sont inutiles, même s'il y a des espaces dans le nom du fichier ou du dossier...

Ceci marche donc (dans le doute, je viens de vérifier...) :

Dim TaskID As Long
Dim fichier As String

fichier = "C:\temp 1\mon fichier 1.txt"
TaskID = Shell("notepad.exe " & fichier, vbNormalFocus)

Mais bon, le code précédent fonctionnait très bien aussi...
0
crenaud76 Messages postés 4172 Date d'inscription mercredi 30 juillet 2003 Statut Membre Dernière intervention 9 juin 2006 28
2 oct. 2005 à 01:01
ceci ...
TaskID = Shell("notepad.exe " & fichier, vbNormalFocus)
... va bugger si la variable fichier contient un nom de fichier contenant des espaces ! Il faut bien mettre des guillemets autour du nom du fichier. Perso, je ne m'embarrasse pas des Chr$(34) ... Je ferais juste ceci ...
TaskID = Shell("notepad.exe """ & fichier & """", vbNormalFocus)

Christophe
0
Rejoignez-nous