Bonjour à tous,
je souhaiterai sur une feuille excel via un userform qu'un utilisateur rentre le chemin d'un fichier qui par la suite subira certains changements.
En fait, vu que cette feuille excel sera envoyé à plusieurs personnes différentes, je ne peux me permettre d'inscrire directement dans le script le chemin du fichier. Je voudrais donc que l'utilisateur saisisse le nom de son fichier que le script va modifier via un userform.
Pour l'instant j'arrive à tout faire tourner en inscrivant un chemin en dur dans le script... Mais lorsque je créé mon userform, je n'arrive pas à faire en sorte que le script prenne en compte le fichier saisi dans le champ texte de l'userform.
Je vous mets ci-dessous mes bouts de codes :
Voici mon script :
Voici mon userform :
Merci par avance pour votre aide et vos conseils
Cordialement,
Miguel
je souhaiterai sur une feuille excel via un userform qu'un utilisateur rentre le chemin d'un fichier qui par la suite subira certains changements.
En fait, vu que cette feuille excel sera envoyé à plusieurs personnes différentes, je ne peux me permettre d'inscrire directement dans le script le chemin du fichier. Je voudrais donc que l'utilisateur saisisse le nom de son fichier que le script va modifier via un userform.
Pour l'instant j'arrive à tout faire tourner en inscrivant un chemin en dur dans le script... Mais lorsque je créé mon userform, je n'arrive pas à faire en sorte que le script prenne en compte le fichier saisi dans le champ texte de l'userform.
Je vous mets ci-dessous mes bouts de codes :
Voici mon script :
Code:
'Extraction et Mapping fichier Project
Sub ExtractProj(nomfich As String)
'Ouverture du fichier Project pour Extraction vers Excel (ça marche si c'est écrit en dur dans le fichier)
'Dim fich
'fich = "d:\Documents and Settings\T0124240\Bureau\MacroPlanning Migration TCF 300311test.mpp" 'à adapter
'ShellExecute 0, "open", fich, "", "", 0
'Test avec l'userform (et là çà ne fonctionne pas)
Dim fich
fich = nomfich
ShellExecute 0, "open", fich, "", "", 0
'Mapping données Project
MacroShowVba
MapEdit Name:="Mappage 1", Create:=True, OverwriteExisting:=True, DataCategory:=0, CategoryEnabled:=True, TableName:="test", FieldName:="Nom", ExternalFieldName:="Nom", ExportFilter:="Toutes les tâches", ImportMethod:=0, HeaderRow:=True, AssignmentData:=False, TextDelimiter:=Chr$(9), TextFileOrigin:=0, UseHtmlTemplate:=False, IncludeImage:=False
MapEdit Name:="Mappage 1", DataCategory:=0, FieldName:="Durée", ExternalFieldName:="Durée"
'Enregistre le fichier sous format Excel
FileSaveAs Name:="d:\Documents and Settings\T0124240\Bureau\ExtractProject-Excel.xls", FormatID:="MSProject.XLS5", Map:="Mappage 1"
'Fermer fichier Project après extraction
On Error Resume Next
Set fich = GetObject(, "MSProject.Application")
If fich Is Nothing Then
MsgBox "Project est fermé"
Else
'MsgBox "Project est ouvert"
fich.Quit 'Fermeture application Project
End If
End Sub
Voici mon userform :
Code:
Private Sub ChargementON_Click()
ExtractProj SaisiNomFichier.Value
End Sub
Private Sub Label1_Click()
End Sub
Private Sub SaisiNomFichier_Change()
End Sub
Private Sub UserForm_Click()
End Sub
Merci par avance pour votre aide et vos conseils
Cordialement,
Miguel