Macro Word : récupérer les résultats dans un fichier Excel
isamur
-
isamur -
isamur -
Bonjour,
J'ai créé une macro dans Word et je souhaite récupérer les valeurs obtenues dans un fichier Excel (à créer). Les valeurs en question sont contenues dans deux variables, "st" et "nom", avec une boucle qui va de 1 à 100.
Voici un extrait du code :
Sub Liste()
....
Workbooks.Add
fichier = "C:\Users\Utilisateur\Desktop\LISTE.xls"
ActiveWorkbook.SaveAs fichier
For x = 1 To 100
...
ActiveSheet.Cells(x, 1).Value = st
ActiveSheet.Cells(x, 2).Value = nom
Next x
Workbooks("LISTE.xls").Save
Workbooks("LISTE.xls").Close
End Sub
Problèmes:
La macro marche, mais ensuite je ne peux pas ouvrir le fichier LISTE. Je dois aller dans le gestionnaire des tâches, rechercher le processus Excel et y mettre fin. C'est seulement ensuite que je peux ouvrir le fichier, le déplacer, etc.
Le mieux serait que la macro ouvre le fichier à la fin. J'ai essayé d'ajouter l'instruction:
Workbooks.Open ("C:\Users\Utilisateur\Desktop\LISTE.xls")
mais il ne se passe rien.
D'ailleurs, il ne serait peut-être pas nécessaire de fermer le fichier et de le rouvrir, mais il faudrait que je le voie affiché à l'écran (et que je puisse intervenir dessus), or ce n'est pas le cas.
Des solutions ?
Merci d'avance pour votre aide !
J'ai créé une macro dans Word et je souhaite récupérer les valeurs obtenues dans un fichier Excel (à créer). Les valeurs en question sont contenues dans deux variables, "st" et "nom", avec une boucle qui va de 1 à 100.
Voici un extrait du code :
Sub Liste()
....
Workbooks.Add
fichier = "C:\Users\Utilisateur\Desktop\LISTE.xls"
ActiveWorkbook.SaveAs fichier
For x = 1 To 100
...
ActiveSheet.Cells(x, 1).Value = st
ActiveSheet.Cells(x, 2).Value = nom
Next x
Workbooks("LISTE.xls").Save
Workbooks("LISTE.xls").Close
End Sub
Problèmes:
La macro marche, mais ensuite je ne peux pas ouvrir le fichier LISTE. Je dois aller dans le gestionnaire des tâches, rechercher le processus Excel et y mettre fin. C'est seulement ensuite que je peux ouvrir le fichier, le déplacer, etc.
Le mieux serait que la macro ouvre le fichier à la fin. J'ai essayé d'ajouter l'instruction:
Workbooks.Open ("C:\Users\Utilisateur\Desktop\LISTE.xls")
mais il ne se passe rien.
D'ailleurs, il ne serait peut-être pas nécessaire de fermer le fichier et de le rouvrir, mais il faudrait que je le voie affiché à l'écran (et que je puisse intervenir dessus), or ce n'est pas le cas.
Des solutions ?
Merci d'avance pour votre aide !
A voir également:
- Macro Word : récupérer les résultats dans un fichier Excel
- Word 2013 - Télécharger - Traitement de texte
- Tableau word - Guide
- Espace insécable word - Guide
- Word et excel gratuit - Guide
- Supprimer une page word - Guide
2 réponses
Bonjour,
Essaie ceci:
pour accéder au classeur mettre ce code
Essaie ceci:
Option Explicit Sub Test() Dim oExcel As Object Dim oBook As Object Dim oSheet As Object Dim st As String Dim nom As String Dim x As Integer st = "essai" nom = "azerty" Set oExcel = CreateObject("Excel.Application") Set oBook = oExcel.Workbooks.Add Set oSheet = oBook.Worksheets(1) For x = 1 To 100 oSheet.Cells(x, 1).Value = st oSheet.Cells(x, 2).Value = nom Next x oBook.SaveAs "C:\Users\LePivert\Documents\monclasseur.xlsx" 'adapter le chemin oExcel.Quit End Sub
pour accéder au classeur mettre ce code
Sub Test() Dim oExcel As Object Dim oBook As Object Dim oSheet As Object Dim st As String Dim nom As String Dim x As Integer st = "essai" nom = "azerty" Set oExcel = CreateObject("Excel.Application") oExcel.Visible = True Set oBook = oExcel.Workbooks.Add Set oSheet = oBook.Worksheets(1) For x = 1 To 100 oSheet.Cells(x, 1).Value = st oSheet.Cells(x, 2).Value = nom Next x ' oBook.SaveAs "C:\Users\LePivert\Documents\monclasseur.xlsx" 'adapter le chemin oExcel.Quit End Sub