Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

copier un graph sous excel et le coller dans word

2 réponses
Avatar
cm
bonjour,
je voudrais copier des graph de excel a word en utilsiant vba mais le
.paste(ou pasteexcel) sur word ne fonctionne pas. c'est donc la dernier
ligne qui bug
si vous pouviez m'aider, merci bcp..

voixi le code:

'ds excel : on copie le graph séléctionnez
ActiveChart.ChartArea.Copy
'ds word
Application.ActivateMicrosoftApp xlMicrosoftWord

Set wrd = GetObject(, "Word.application")
wrd.Visible = True
wrd.documents.Open "C:\Documents and Settings\MAETZ\mes
documents\test.doc"

Dim appwd As Object

Set appwd = GetObject("C:\Documents and Settings\MAETZ\mes
documents\test.doc", worksheet)
appwd.Visible = True
appwd.PasteExcelTable False, False, False

2 réponses

Avatar
michdenis
Bonjour Cm,

Voici un message sur le sujet qui est passé ici dans de groupe de discussion : Je n'ai pas le nom de l'auteur. Si cela
peut t'aider ...


Salutations!

P.S. Attention aux lignes de code coupées intempestivement par le service de messagerie.

'*****************************************
Faire des graphes ds Word à partir d'Excel

La Sub en dessous cree deux graphiques Excel par rang de
donnees sur des pages Word successives. Regardez bien le
code (F8). J'assume que le premier graphique comprends le
rang entier. Aussi, j'assume que le deuxieme graphique
commence seulement a la cinquieme colonne tout en gardand
les noms des monsieurs. Changez le code a votre guise
(legend set to False...etc.).

1)Creez un fichier normal vide (.doc) dans Word et donnez
lui le nom MesMonsieurs (MesMonsieurs.doc). Voyez le code,
j'assume que vous avez MesMonsieurs.doc sur drive C.

2)Gardez Word ferme.

3)En ce qui concerne les donnees sur la feuille(?) (ou
worksheet en Anglais), ayez les noms des monsieurs dans la
premiere colonne (A). Les pourcentages dans les autres.
(pas de rangs vides).

4)Executez la Sub.


========================================================= Sub Pour_Chaque_Rang_Deux_Graphiques_Excel_Dans_Chaque_Page_Word()

Dim myWord As Word.Application
Dim i As Long
Dim LesRows As Long
Dim LaChartData As Range
Application.ScreenUpdating = False

LesRows = Application.CountA(Worksheets("Sheet1").Range("A:A"))
Set myWord = New Word.Application

With myWord
.Documents.Open FileName:="C:MesMonsieurs.doc"
With .Selection
.EndKey Unit:=wdStory
.TypeParagraph
For i = 1 To LesRows
'To create the first chart (from the first column to the last one).
Set LaChartData = Range(Cells(i, 1), Cells(i, 1).End(xlToRight))
Charts.Add.Location Where:=xlLocationAsObject, Name:="Sheet1"
With ActiveChart
.SetSourceData Source:=LaChartData, PlotBy:=xlColumns
.Parent.Name = "LaChart"
.HasLegend = False
End With
'To copy the chart.
ThisWorkbook.Worksheets("sheet1"). _
ChartObjects("LaChart").Chart.ChartArea.Copy
'To paste the chart.
.PasteSpecial Link:=True, DataType:=wdPasteOLEObject, Placement:=wdInLine
'To delete the chart.
ActiveSheet.ChartObjects("LaChart").Delete

'To create the second chart (assuming from the 5th column to the last one).
Set LaChartData = Application.Union(Cells(i, 1), Range(Cells(i, 5), Cells(i, 5).End(xlToRight)))
Charts.Add.Location Where:=xlLocationAsObject, Name:="Sheet1"
With ActiveChart
.SetSourceData Source:=LaChartData, PlotBy:=xlColumns
.Parent.Name = "LaChart"
.HasLegend = False
End With
'To copy the chart.
ThisWorkbook.Worksheets("sheet1"). _
ChartObjects("LaChart").Chart.ChartArea.Copy
'To paste the second chart.
.EndKey Unit:=wdLine
.PasteSpecial Link:=True, DataType:=wdPasteOLEObject, Placement:=wdInLine
'To delete the chart.
ActiveSheet.ChartObjects("LaChart").Delete

'To go down to the next page.
.InsertBreak Type:=wdSectionBreakNextPage
Next i
End With
.ActiveDocument.Save
.Quit
End With
Set myWord = Nothing
Application.ScreenUpdating = True
End Sub
======================================================== '*****************************************



"cm" a écrit dans le message de news:cc6kqt$602$
bonjour,
je voudrais copier des graph de excel a word en utilsiant vba mais le
.paste(ou pasteexcel) sur word ne fonctionne pas. c'est donc la dernier
ligne qui bug
si vous pouviez m'aider, merci bcp..

voixi le code:

'ds excel : on copie le graph séléctionnez
ActiveChart.ChartArea.Copy
'ds word
Application.ActivateMicrosoftApp xlMicrosoftWord

Set wrd = GetObject(, "Word.application")
wrd.Visible = True
wrd.documents.Open "C:Documents and SettingsMAETZmes
documentstest.doc"

Dim appwd As Object

Set appwd = GetObject("C:Documents and SettingsMAETZmes
documentstest.doc", worksheet)
appwd.Visible = True
appwd.PasteExcelTable False, False, False
Avatar
cm
merci bcp michel pr tes infos précieuse ! ca marceh après modif
il ne rest plus qu'a savoir comment je peux modifier la taille de mes
graphs ds word avec vba !
+
christophe

"michdenis" a écrit dans le message de
news:
Bonjour Cm,

Voici un message sur le sujet qui est passé ici dans de groupe de
discussion : Je n'ai pas le nom de l'auteur. Si cela

peut t'aider ...


Salutations!

P.S. Attention aux lignes de code coupées intempestivement par le service
de messagerie.


'*****************************************
Faire des graphes ds Word à partir d'Excel

La Sub en dessous cree deux graphiques Excel par rang de
donnees sur des pages Word successives. Regardez bien le
code (F8). J'assume que le premier graphique comprends le
rang entier. Aussi, j'assume que le deuxieme graphique
commence seulement a la cinquieme colonne tout en gardand
les noms des monsieurs. Changez le code a votre guise
(legend set to False...etc.).

1)Creez un fichier normal vide (.doc) dans Word et donnez
lui le nom MesMonsieurs (MesMonsieurs.doc). Voyez le code,
j'assume que vous avez MesMonsieurs.doc sur drive C.

2)Gardez Word ferme.

3)En ce qui concerne les donnees sur la feuille(?) (ou
worksheet en Anglais), ayez les noms des monsieurs dans la
premiere colonne (A). Les pourcentages dans les autres.
(pas de rangs vides).

4)Executez la Sub.


========================================================= > Sub Pour_Chaque_Rang_Deux_Graphiques_Excel_Dans_Chaque_Page_Word()

Dim myWord As Word.Application
Dim i As Long
Dim LesRows As Long
Dim LaChartData As Range
Application.ScreenUpdating = False

LesRows = Application.CountA(Worksheets("Sheet1").Range("A:A"))
Set myWord = New Word.Application

With myWord
.Documents.Open FileName:="C:MesMonsieurs.doc"
With .Selection
.EndKey Unit:=wdStory
.TypeParagraph
For i = 1 To LesRows
'To create the first chart (from the first column to the last
one).

Set LaChartData = Range(Cells(i, 1), Cells(i, 1).End(xlToRight))
Charts.Add.Location Where:=xlLocationAsObject, Name:="Sheet1"
With ActiveChart
.SetSourceData Source:=LaChartData, PlotBy:=xlColumns
.Parent.Name = "LaChart"
.HasLegend = False
End With
'To copy the chart.
ThisWorkbook.Worksheets("sheet1"). _
ChartObjects("LaChart").Chart.ChartArea.Copy
'To paste the chart.
.PasteSpecial Link:=True, DataType:=wdPasteOLEObject,
Placement:=wdInLine

'To delete the chart.
ActiveSheet.ChartObjects("LaChart").Delete

'To create the second chart (assuming from the 5th column to the
last one).

Set LaChartData = Application.Union(Cells(i, 1), Range(Cells(i,
5), Cells(i, 5).End(xlToRight)))

Charts.Add.Location Where:=xlLocationAsObject, Name:="Sheet1"
With ActiveChart
.SetSourceData Source:=LaChartData, PlotBy:=xlColumns
.Parent.Name = "LaChart"
.HasLegend = False
End With
'To copy the chart.
ThisWorkbook.Worksheets("sheet1"). _
ChartObjects("LaChart").Chart.ChartArea.Copy
'To paste the second chart.
.EndKey Unit:=wdLine
.PasteSpecial Link:=True, DataType:=wdPasteOLEObject,
Placement:=wdInLine

'To delete the chart.
ActiveSheet.ChartObjects("LaChart").Delete

'To go down to the next page.
.InsertBreak Type:=wdSectionBreakNextPage
Next i
End With
.ActiveDocument.Save
.Quit
End With
Set myWord = Nothing
Application.ScreenUpdating = True
End Sub
======================================================== > '*****************************************



"cm" a écrit dans le message de
news:cc6kqt$602$

bonjour,
je voudrais copier des graph de excel a word en utilsiant vba mais le
.paste(ou pasteexcel) sur word ne fonctionne pas. c'est donc la dernier
ligne qui bug
si vous pouviez m'aider, merci bcp..

voixi le code:

'ds excel : on copie le graph séléctionnez
ActiveChart.ChartArea.Copy
'ds word
Application.ActivateMicrosoftApp xlMicrosoftWord

Set wrd = GetObject(, "Word.application")
wrd.Visible = True
wrd.documents.Open "C:Documents and SettingsMAETZmes
documentstest.doc"

Dim appwd As Object

Set appwd = GetObject("C:Documents and SettingsMAETZmes
documentstest.doc", worksheet)
appwd.Visible = True
appwd.PasteExcelTable False, False, False