Je dois importer un tableau Word vers Excel. Et pour être plus précis
certaines cellules
(connues d'avance).
Access et Excel me sont assez familier mais je n'ai jamais programmé Word
via le VBA !
Pourriez-vous me donner une piste pour procéder à cette importation.
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Jacques
Merci, c'est parfait ! Je vais importer le tableau au complet et je ferai le ménage dans Excel :-) Un grand merci
Jacques
"Jean-Guy Marcil" a écrit dans le message de news:
Jacques (BE) was telling us: Jacques (BE) nous racontait que :
Bonjour,
Je dois importer un tableau Word vers Excel. Et pour être plus précis certaines cellules (connues d'avance).
Connues comment? Il te restera cet aspect à travailler...
Access et Excel me sont assez familier mais je n'ai jamais programmé Word via le VBA !
Pourriez-vous me donner une piste pour procéder à cette importation.
Merci de vos réponses
Option Explicit 'Dans l'éditeur VBA de Word: Outils > Référence, ajouter une référence 'à la librairie de Microsoft Excel
Sub TableToWorkbook()
Dim oXL As Excel.Application Dim oWB As Excel.Workbook Dim oSheet As Excel.Worksheet Dim oRng As Excel.Range Dim ExcelWasNotRunning As Boolean Dim WorkbookToWorkOn As String Dim rgeWordTable As Range
'Sélectionner un tableau, dans ce cas, 'celui sous le curseur, si pas de tableau, quitter
If Not Selection.Information(wdWithInTable) Then MsgBox "Veuillez placer le curseur dans un tableau." Exit Sub Else Set rgeWordTable = Selection.Range.Tables(1).Range rgeWordTable.Copy End If
'Spécifier le classeur à utiliser WorkbookToWorkOn = "C:Documents and SettingsHP_AdministratorMy DocumentsBook1.xls"
'Si Excel est déjà activé, y référer; sinon lancer Excel On Error Resume Next Set oXL = GetObject(, "Excel.Application")
If Err Then ExcelWasNotRunning = True Set oXL = New Excel.Application End If
On Error GoTo Err_Handler
'Si on veut que Excel soit visible, on peut ajouter laligne: 'oXL.Visible = True 'ici; mais le code exécute plus vite si Excel est invisible
'Ouvrir le classeur Set oWB = oXL.Workbooks.Open(FileName:=WorkbookToWorkOn)
'Sélectionner une feuille Set oSheet = oXL.ActiveWorkbook.Worksheets(1)
'Transférer les données With oSheet .Cells(3, 3).Select .Paste .Cells(3, 3).Select End With oWB.Save
If ExcelWasNotRunning Then oXL.Quit End If
'Ne pas oublier d'enlever les objets de la mémoire. Set oRng = Nothing Set oSheet = Nothing Set oWB = Nothing Set oXL = Nothing
'Quitter Exit Sub
Err_Handler: MsgBox WorkbookToWorkOn & " a causé un problème. " & Err.Description, vbCritical, _ "Erreur : " & Err.Number If ExcelWasNotRunning Then oXL.Quit End If
End Sub
--
Salut! _______________________________________ Jean-Guy Marcil - Word MVP
Word MVP site: http://www.word.mvps.org
Merci, c'est parfait ! Je vais importer le tableau au complet et je ferai le
ménage dans Excel :-)
Un grand merci
Jacques
"Jean-Guy Marcil" <DontEvenTry@NoSpam> a écrit dans le message de news:
ua3MMZIJHHA.1064@TK2MSFTNGP04.phx.gbl...
Jacques (BE) was telling us:
Jacques (BE) nous racontait que :
Bonjour,
Je dois importer un tableau Word vers Excel. Et pour être plus précis
certaines cellules
(connues d'avance).
Connues comment?
Il te restera cet aspect à travailler...
Access et Excel me sont assez familier mais je n'ai jamais programmé
Word via le VBA !
Pourriez-vous me donner une piste pour procéder à cette importation.
Merci de vos réponses
Option Explicit
'Dans l'éditeur VBA de Word: Outils > Référence, ajouter une référence
'à la librairie de Microsoft Excel
Sub TableToWorkbook()
Dim oXL As Excel.Application
Dim oWB As Excel.Workbook
Dim oSheet As Excel.Worksheet
Dim oRng As Excel.Range
Dim ExcelWasNotRunning As Boolean
Dim WorkbookToWorkOn As String
Dim rgeWordTable As Range
'Sélectionner un tableau, dans ce cas,
'celui sous le curseur, si pas de tableau, quitter
If Not Selection.Information(wdWithInTable) Then
MsgBox "Veuillez placer le curseur dans un tableau."
Exit Sub
Else
Set rgeWordTable = Selection.Range.Tables(1).Range
rgeWordTable.Copy
End If
'Spécifier le classeur à utiliser
WorkbookToWorkOn = "C:Documents and SettingsHP_AdministratorMy
DocumentsBook1.xls"
'Si Excel est déjà activé, y référer; sinon lancer Excel
On Error Resume Next
Set oXL = GetObject(, "Excel.Application")
If Err Then
ExcelWasNotRunning = True
Set oXL = New Excel.Application
End If
On Error GoTo Err_Handler
'Si on veut que Excel soit visible, on peut ajouter laligne:
'oXL.Visible = True
'ici; mais le code exécute plus vite si Excel est invisible
'Ouvrir le classeur
Set oWB = oXL.Workbooks.Open(FileName:=WorkbookToWorkOn)
'Sélectionner une feuille
Set oSheet = oXL.ActiveWorkbook.Worksheets(1)
'Transférer les données
With oSheet
.Cells(3, 3).Select
.Paste
.Cells(3, 3).Select
End With
oWB.Save
If ExcelWasNotRunning Then
oXL.Quit
End If
'Ne pas oublier d'enlever les objets de la mémoire.
Set oRng = Nothing
Set oSheet = Nothing
Set oWB = Nothing
Set oXL = Nothing
'Quitter
Exit Sub
Err_Handler:
MsgBox WorkbookToWorkOn & " a causé un problème. " & Err.Description,
vbCritical, _
"Erreur : " & Err.Number
If ExcelWasNotRunning Then
oXL.Quit
End If
End Sub
--
Salut!
_______________________________________
Jean-Guy Marcil - Word MVP
jmarcilREMOVE@CAPSsympatico.caTHISTOO
Word MVP site: http://www.word.mvps.org
Merci, c'est parfait ! Je vais importer le tableau au complet et je ferai le ménage dans Excel :-) Un grand merci
Jacques
"Jean-Guy Marcil" a écrit dans le message de news:
Jacques (BE) was telling us: Jacques (BE) nous racontait que :
Bonjour,
Je dois importer un tableau Word vers Excel. Et pour être plus précis certaines cellules (connues d'avance).
Connues comment? Il te restera cet aspect à travailler...
Access et Excel me sont assez familier mais je n'ai jamais programmé Word via le VBA !
Pourriez-vous me donner une piste pour procéder à cette importation.
Merci de vos réponses
Option Explicit 'Dans l'éditeur VBA de Word: Outils > Référence, ajouter une référence 'à la librairie de Microsoft Excel
Sub TableToWorkbook()
Dim oXL As Excel.Application Dim oWB As Excel.Workbook Dim oSheet As Excel.Worksheet Dim oRng As Excel.Range Dim ExcelWasNotRunning As Boolean Dim WorkbookToWorkOn As String Dim rgeWordTable As Range
'Sélectionner un tableau, dans ce cas, 'celui sous le curseur, si pas de tableau, quitter
If Not Selection.Information(wdWithInTable) Then MsgBox "Veuillez placer le curseur dans un tableau." Exit Sub Else Set rgeWordTable = Selection.Range.Tables(1).Range rgeWordTable.Copy End If
'Spécifier le classeur à utiliser WorkbookToWorkOn = "C:Documents and SettingsHP_AdministratorMy DocumentsBook1.xls"
'Si Excel est déjà activé, y référer; sinon lancer Excel On Error Resume Next Set oXL = GetObject(, "Excel.Application")
If Err Then ExcelWasNotRunning = True Set oXL = New Excel.Application End If
On Error GoTo Err_Handler
'Si on veut que Excel soit visible, on peut ajouter laligne: 'oXL.Visible = True 'ici; mais le code exécute plus vite si Excel est invisible
'Ouvrir le classeur Set oWB = oXL.Workbooks.Open(FileName:=WorkbookToWorkOn)
'Sélectionner une feuille Set oSheet = oXL.ActiveWorkbook.Worksheets(1)
'Transférer les données With oSheet .Cells(3, 3).Select .Paste .Cells(3, 3).Select End With oWB.Save
If ExcelWasNotRunning Then oXL.Quit End If
'Ne pas oublier d'enlever les objets de la mémoire. Set oRng = Nothing Set oSheet = Nothing Set oWB = Nothing Set oXL = Nothing
'Quitter Exit Sub
Err_Handler: MsgBox WorkbookToWorkOn & " a causé un problème. " & Err.Description, vbCritical, _ "Erreur : " & Err.Number If ExcelWasNotRunning Then oXL.Quit End If
End Sub
--
Salut! _______________________________________ Jean-Guy Marcil - Word MVP
Word MVP site: http://www.word.mvps.org
Jean-Guy Marcil
Jacques (BE) was telling us: Jacques (BE) nous racontait que :
Bonjour,
Je dois importer un tableau Word vers Excel. Et pour être plus précis certaines cellules (connues d'avance).
Connues comment? Il te restera cet aspect à travailler...
Access et Excel me sont assez familier mais je n'ai jamais programmé Word via le VBA !
Pourriez-vous me donner une piste pour procéder à cette importation.
Merci de vos réponses
Option Explicit 'Dans l'éditeur VBA de Word: Outils > Référence, ajouter une référence 'à la librairie de Microsoft Excel
Sub TableToWorkbook()
Dim oXL As Excel.Application Dim oWB As Excel.Workbook Dim oSheet As Excel.Worksheet Dim oRng As Excel.Range Dim ExcelWasNotRunning As Boolean Dim WorkbookToWorkOn As String Dim rgeWordTable As Range
'Sélectionner un tableau, dans ce cas, 'celui sous le curseur, si pas de tableau, quitter
If Not Selection.Information(wdWithInTable) Then MsgBox "Veuillez placer le curseur dans un tableau." Exit Sub Else Set rgeWordTable = Selection.Range.Tables(1).Range rgeWordTable.Copy End If
'Spécifier le classeur à utiliser WorkbookToWorkOn = "C:Documents and SettingsHP_AdministratorMy DocumentsBook1.xls"
'Si Excel est déjà activé, y référer; sinon lancer Excel On Error Resume Next Set oXL = GetObject(, "Excel.Application")
If Err Then ExcelWasNotRunning = True Set oXL = New Excel.Application End If
On Error GoTo Err_Handler
'Si on veut que Excel soit visible, on peut ajouter laligne: 'oXL.Visible = True 'ici; mais le code exécute plus vite si Excel est invisible
'Ouvrir le classeur Set oWB = oXL.Workbooks.Open(FileName:=WorkbookToWorkOn)
'Sélectionner une feuille Set oSheet = oXL.ActiveWorkbook.Worksheets(1)
'Transférer les données With oSheet .Cells(3, 3).Select .Paste .Cells(3, 3).Select End With oWB.Save
If ExcelWasNotRunning Then oXL.Quit End If
'Ne pas oublier d'enlever les objets de la mémoire. Set oRng = Nothing Set oSheet = Nothing Set oWB = Nothing Set oXL = Nothing
'Quitter Exit Sub
Err_Handler: MsgBox WorkbookToWorkOn & " a causé un problème. " & Err.Description, vbCritical, _ "Erreur : " & Err.Number If ExcelWasNotRunning Then oXL.Quit End If
End Sub
--
Salut! _______________________________________ Jean-Guy Marcil - Word MVP
Word MVP site: http://www.word.mvps.org
Jacques (BE) was telling us:
Jacques (BE) nous racontait que :
Bonjour,
Je dois importer un tableau Word vers Excel. Et pour être plus précis
certaines cellules
(connues d'avance).
Connues comment?
Il te restera cet aspect à travailler...
Access et Excel me sont assez familier mais je n'ai jamais programmé
Word via le VBA !
Pourriez-vous me donner une piste pour procéder à cette importation.
Merci de vos réponses
Option Explicit
'Dans l'éditeur VBA de Word: Outils > Référence, ajouter une référence
'à la librairie de Microsoft Excel
Sub TableToWorkbook()
Dim oXL As Excel.Application
Dim oWB As Excel.Workbook
Dim oSheet As Excel.Worksheet
Dim oRng As Excel.Range
Dim ExcelWasNotRunning As Boolean
Dim WorkbookToWorkOn As String
Dim rgeWordTable As Range
'Sélectionner un tableau, dans ce cas,
'celui sous le curseur, si pas de tableau, quitter
If Not Selection.Information(wdWithInTable) Then
MsgBox "Veuillez placer le curseur dans un tableau."
Exit Sub
Else
Set rgeWordTable = Selection.Range.Tables(1).Range
rgeWordTable.Copy
End If
'Spécifier le classeur à utiliser
WorkbookToWorkOn = "C:Documents and SettingsHP_AdministratorMy
DocumentsBook1.xls"
'Si Excel est déjà activé, y référer; sinon lancer Excel
On Error Resume Next
Set oXL = GetObject(, "Excel.Application")
If Err Then
ExcelWasNotRunning = True
Set oXL = New Excel.Application
End If
On Error GoTo Err_Handler
'Si on veut que Excel soit visible, on peut ajouter laligne:
'oXL.Visible = True
'ici; mais le code exécute plus vite si Excel est invisible
'Ouvrir le classeur
Set oWB = oXL.Workbooks.Open(FileName:=WorkbookToWorkOn)
'Sélectionner une feuille
Set oSheet = oXL.ActiveWorkbook.Worksheets(1)
'Transférer les données
With oSheet
.Cells(3, 3).Select
.Paste
.Cells(3, 3).Select
End With
oWB.Save
If ExcelWasNotRunning Then
oXL.Quit
End If
'Ne pas oublier d'enlever les objets de la mémoire.
Set oRng = Nothing
Set oSheet = Nothing
Set oWB = Nothing
Set oXL = Nothing
'Quitter
Exit Sub
Err_Handler:
MsgBox WorkbookToWorkOn & " a causé un problème. " & Err.Description,
vbCritical, _
"Erreur : " & Err.Number
If ExcelWasNotRunning Then
oXL.Quit
End If
End Sub
--
Salut!
_______________________________________
Jean-Guy Marcil - Word MVP
jmarcilREMOVE@CAPSsympatico.caTHISTOO
Word MVP site: http://www.word.mvps.org
Jacques (BE) was telling us: Jacques (BE) nous racontait que :
Bonjour,
Je dois importer un tableau Word vers Excel. Et pour être plus précis certaines cellules (connues d'avance).
Connues comment? Il te restera cet aspect à travailler...
Access et Excel me sont assez familier mais je n'ai jamais programmé Word via le VBA !
Pourriez-vous me donner une piste pour procéder à cette importation.
Merci de vos réponses
Option Explicit 'Dans l'éditeur VBA de Word: Outils > Référence, ajouter une référence 'à la librairie de Microsoft Excel
Sub TableToWorkbook()
Dim oXL As Excel.Application Dim oWB As Excel.Workbook Dim oSheet As Excel.Worksheet Dim oRng As Excel.Range Dim ExcelWasNotRunning As Boolean Dim WorkbookToWorkOn As String Dim rgeWordTable As Range
'Sélectionner un tableau, dans ce cas, 'celui sous le curseur, si pas de tableau, quitter
If Not Selection.Information(wdWithInTable) Then MsgBox "Veuillez placer le curseur dans un tableau." Exit Sub Else Set rgeWordTable = Selection.Range.Tables(1).Range rgeWordTable.Copy End If
'Spécifier le classeur à utiliser WorkbookToWorkOn = "C:Documents and SettingsHP_AdministratorMy DocumentsBook1.xls"
'Si Excel est déjà activé, y référer; sinon lancer Excel On Error Resume Next Set oXL = GetObject(, "Excel.Application")
If Err Then ExcelWasNotRunning = True Set oXL = New Excel.Application End If
On Error GoTo Err_Handler
'Si on veut que Excel soit visible, on peut ajouter laligne: 'oXL.Visible = True 'ici; mais le code exécute plus vite si Excel est invisible
'Ouvrir le classeur Set oWB = oXL.Workbooks.Open(FileName:=WorkbookToWorkOn)
'Sélectionner une feuille Set oSheet = oXL.ActiveWorkbook.Worksheets(1)
'Transférer les données With oSheet .Cells(3, 3).Select .Paste .Cells(3, 3).Select End With oWB.Save
If ExcelWasNotRunning Then oXL.Quit End If
'Ne pas oublier d'enlever les objets de la mémoire. Set oRng = Nothing Set oSheet = Nothing Set oWB = Nothing Set oXL = Nothing
'Quitter Exit Sub
Err_Handler: MsgBox WorkbookToWorkOn & " a causé un problème. " & Err.Description, vbCritical, _ "Erreur : " & Err.Number If ExcelWasNotRunning Then oXL.Quit End If
End Sub
--
Salut! _______________________________________ Jean-Guy Marcil - Word MVP