Utiliser un string pour ouvrir un fichier
phil360
-
Utilisateur anonyme -
Utilisateur anonyme -
Bonjour,
Je suis nouveau dans la programmation VBA. J'essais de créer un macro avec Excel pour "automatiser" la saisie de texte. je vous explique mon projet.
À chaque jour, je dois aller chercher des renseignements sur un ordinateur hors réseau à l'aide d'une clé USB. Les fichiers qui contiennent les renseignements sont en CSV.
Ainsi, j'ai créer un fichier Excel qui agit comme convertisseur. je sélectionne le nom du fichier, le feuille et la case ce qui permet de savoir qu'elle fichier doit être convertie.
Puis quand j'essais d'effectuer ma dé concaténation. je ne suis pas capable de prendre le nom de la case choisis.
voici mon code....
EDIT: Ajout de la coloration syntaxique.
Je suis nouveau dans la programmation VBA. J'essais de créer un macro avec Excel pour "automatiser" la saisie de texte. je vous explique mon projet.
À chaque jour, je dois aller chercher des renseignements sur un ordinateur hors réseau à l'aide d'une clé USB. Les fichiers qui contiennent les renseignements sont en CSV.
Ainsi, j'ai créer un fichier Excel qui agit comme convertisseur. je sélectionne le nom du fichier, le feuille et la case ce qui permet de savoir qu'elle fichier doit être convertie.
Puis quand j'essais d'effectuer ma dé concaténation. je ne suis pas capable de prendre le nom de la case choisis.
voici mon code....
Sub Convertisseur()
Dim fichier1 As String
Dim nbfeuille1 As String
Dim fichier2 As String
Dim nbfeuille2 As String
fichier1 = Workbooks("Convertisseur.xlsx").Worksheets("Allo").Range("A3")
nbfeuille1 = Workbooks("Convertisseur.xlsx").Worksheets("Allo").Range("A4")
Workbooks (allo) ***** J'ai toujours une erreur à ce niveau!!
Columns("A:A").Select
Selection.TextToColumns Destination:=Range("A1"), DataType:=xlDelimited, _
TextQualifier:=xlDoubleQuote, ConsecutiveDelimiter:=True, Tab:=False, _ Semicolon:=True, Comma:=False, Space:=False, Other:=False, FieldInfo _
:=Array(Array(1, 1), Array(2, 1), Array(3, 1)), TrailingMinusNumbers:=True
'Workbooks("jour.CSV").Sheets("jour").Range("F2:F15").Copy
'Workbooks("Power Line 2010-2011.xls").Sheets("Runtime mars").Range ("G135")
End Sub
EDIT: Ajout de la coloration syntaxique.
A voir également:
- Utiliser un string pour ouvrir un fichier
- Comment ouvrir un fichier epub ? - Guide
- Comment ouvrir un fichier bin ? - Guide
- Ouvrir un fichier .dat - Guide
- Comment ouvrir un fichier docx ? - Guide
- Comment réduire la taille d'un fichier - Guide
2 réponses
Bonjour,
En fait je me suis mal exprimé. Le nom de mes dossiers change toujours, ainsi, je créer un fichier convertisseur avec le nom du fichier(que j'entre à la main dans la cellule A3) et le nom de la page(que j'entre aussi à la main dans la cellule A4). Par la suite, je veux extraire le nom du fichier et de la page pour être en mesure d'ouvrir le fichier pour le dé concaténé. Et ces la que j'ai mon erreur..
En fait je me suis mal exprimé. Le nom de mes dossiers change toujours, ainsi, je créer un fichier convertisseur avec le nom du fichier(que j'entre à la main dans la cellule A3) et le nom de la page(que j'entre aussi à la main dans la cellule A4). Par la suite, je veux extraire le nom du fichier et de la page pour être en mesure d'ouvrir le fichier pour le dé concaténé. Et ces la que j'ai mon erreur..
Sub Convertisseur()
Dim fichier1 As String
Dim nbfeuille1 As String
Dim fichier2 As String
Dim nbfeuille2 As String
Application.Workbooks("Convertisseur.xlsx").Worksheets("feuil1").Activate
fichier1 = Range("A3") *** je mets la cellule A3 du fichier convertisseur ( fichier)
'nbfeuille1 = Range("A4") ****** je mets la cellule A4 du fichier convertisseur dans fichier( plage)
'Range("A16") = fichier1 *** je peux mettre la valeur de fichier1 dans A16 mais je ne suis pas capable de mettre la valeur de fichier1 dans un workbooks.
*
**
*** plusieurs essais pour réussis a ouvrir le fichier
Set objSheet = ThisWorkbook.Sheets(fichier1) *** j'essais
Workbooks(fichier1).Select *** j'essais
'Workbooks (fichier1) *** j'essais
'Columns("A:A").Select
'Selection.TextToColumns Destination:=Range("A1"),DataType:=xlDelimited, _
'TextQualifier:=xlDoubleQuote, ConsecutiveDelimiter:=True, Tab:=False, _
'Semicolon:=True, Comma:=False, Space:=False, Other:=False, FieldInfo _
' :=Array(Array(1, 1), Array(2, 1), Array(3, 1)), TrailingMinusNumbers:=True
'Workbooks("jour.CSV").Sheets("jour").Range("F2:F15").Copy
'Workbooks("Power Line 2010-2011.xls").Sheets("Runtime mars").Range ("G135")
End Sub