Quelqu'un pourrait me donner une ébauche d'une macro ds les grandes lignes
en VBA sous Excel qui ouvrirait un document word et qui copierait une
feuille Excel dans ce document word, fermerait Excel mais tout en gardant
word ouvert ....
si on pouvait me donner le plus de detail possible tel que la declaration de
lobjet document word .. etc (SVP !!!!!!)
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
Daniel.j
Une page sur ce sujet: http://dj.joss.free.fr/word.htm
Daniel "Kamel" a écrit dans le message de news: | Bonjour, | | Quelqu'un pourrait me donner une ébauche d'une macro ds les grandes lignes | en VBA sous Excel qui ouvrirait un document word et qui copierait une | feuille Excel dans ce document word, fermerait Excel mais tout en gardant | word ouvert .... | | si on pouvait me donner le plus de detail possible tel que la declaration de | lobjet document word .. etc (SVP !!!!!!) | | Merci | |
Une page sur ce sujet:
http://dj.joss.free.fr/word.htm
Daniel
"Kamel" <kamel@bogoss.com> a écrit dans le message de news: uUkLRXl7DHA.2416@TK2MSFTNGP10.phx.gbl...
| Bonjour,
|
| Quelqu'un pourrait me donner une ébauche d'une macro ds les grandes lignes
| en VBA sous Excel qui ouvrirait un document word et qui copierait une
| feuille Excel dans ce document word, fermerait Excel mais tout en gardant
| word ouvert ....
|
| si on pouvait me donner le plus de detail possible tel que la declaration de
| lobjet document word .. etc (SVP !!!!!!)
|
| Merci
|
|
Une page sur ce sujet: http://dj.joss.free.fr/word.htm
Daniel "Kamel" a écrit dans le message de news: | Bonjour, | | Quelqu'un pourrait me donner une ébauche d'une macro ds les grandes lignes | en VBA sous Excel qui ouvrirait un document word et qui copierait une | feuille Excel dans ce document word, fermerait Excel mais tout en gardant | word ouvert .... | | si on pouvait me donner le plus de detail possible tel que la declaration de | lobjet document word .. etc (SVP !!!!!!) | | Merci | |
Lydya
Bonsoir Kamel,
Voici deux macros testées uniquement avec Excel et Word 97 (nom de la feuille xl à copier à adapter ainsi que le chemin et le nom du document Word à ouvrir). Dans la première, tu précises toi-même la plage à copier (ici A1:G10) : -- Sub CopieExcelWord() Dim PlageACopier As Range Dim AppWord As Object Set PlageACopier = Sheets("NomFeuille").Range("A1:G10") Set AppWord = CreateObject("Word.Application") PlageACopier.Copy With AppWord .Visible = True .documents.Open FileName:="C:TempDocAOuvrir.doc" .Selection.Paste End With ActiveWorkbook.Save Application.Quit End Sub -- Dans la deuxième macro, la plage à copier est définie automatiquement: le nombre de lignes est déterminé d'après la dernière cellule non vide de la col A et le nombre de colonnes d'après la dernière cellule non vide de la ligne 1. -- Sub CopiePlageAutoExcelWord() Dim NbLignes As Long Dim NbCols As Integer Dim Feuille As Worksheet Dim PlageACopier As Range Dim AppWord As Object Set Feuille = Sheets("NomFeuille") If WorksheetFunction.CountA(Cells) > 0 Then NbLignes = [A:A].Find("*", , , , , xlPrevious).Row NbCols = [1:1].Find("*", , , , , xlPrevious).Column Else MsgBox "La feuille ne contient pas de données" Exit Sub End If Set PlageACopier = Feuille.Range(Cells(1, 1), Cells(NbLignes, NbCols)) Set AppWord = CreateObject("Word.Application") PlageACopier.Copy With AppWord .Visible = True .documents.Open FileName:="C:TempDocAOuvrir.doc" .Selection.Paste End With ActiveWorkbook.Save Application.Quit End Sub -- Bonne soirée
Lydya
"Kamel" a écrit dans le message de news:
Bonjour,
Quelqu'un pourrait me donner une ébauche d'une macro ds les grandes lignes en VBA sous Excel qui ouvrirait un document word et qui copierait une feuille Excel dans ce document word, fermerait Excel mais tout en gardant word ouvert ....
si on pouvait me donner le plus de detail possible tel que la declaration de
lobjet document word .. etc (SVP !!!!!!)
Merci
Bonsoir Kamel,
Voici deux macros testées uniquement avec Excel et Word 97 (nom de la
feuille xl à copier à adapter ainsi que le chemin et le nom du document Word
à ouvrir).
Dans la première, tu précises toi-même la plage à copier (ici A1:G10) :
--
Sub CopieExcelWord()
Dim PlageACopier As Range
Dim AppWord As Object
Set PlageACopier = Sheets("NomFeuille").Range("A1:G10")
Set AppWord = CreateObject("Word.Application")
PlageACopier.Copy
With AppWord
.Visible = True
.documents.Open FileName:="C:TempDocAOuvrir.doc"
.Selection.Paste
End With
ActiveWorkbook.Save
Application.Quit
End Sub
--
Dans la deuxième macro, la plage à copier est définie automatiquement: le
nombre de lignes est déterminé d'après la dernière cellule non vide de la
col A et le nombre de colonnes d'après la dernière cellule non vide de la
ligne 1.
--
Sub CopiePlageAutoExcelWord()
Dim NbLignes As Long
Dim NbCols As Integer
Dim Feuille As Worksheet
Dim PlageACopier As Range
Dim AppWord As Object
Set Feuille = Sheets("NomFeuille")
If WorksheetFunction.CountA(Cells) > 0 Then
NbLignes = [A:A].Find("*", , , , , xlPrevious).Row
NbCols = [1:1].Find("*", , , , , xlPrevious).Column
Else
MsgBox "La feuille ne contient pas de données"
Exit Sub
End If
Set PlageACopier = Feuille.Range(Cells(1, 1), Cells(NbLignes, NbCols))
Set AppWord = CreateObject("Word.Application")
PlageACopier.Copy
With AppWord
.Visible = True
.documents.Open FileName:="C:TempDocAOuvrir.doc"
.Selection.Paste
End With
ActiveWorkbook.Save
Application.Quit
End Sub
--
Bonne soirée
Lydya
"Kamel" <kamel@bogoss.com> a écrit dans le message de
news:uUkLRXl7DHA.2416@TK2MSFTNGP10.phx.gbl...
Bonjour,
Quelqu'un pourrait me donner une ébauche d'une macro ds les grandes lignes
en VBA sous Excel qui ouvrirait un document word et qui copierait une
feuille Excel dans ce document word, fermerait Excel mais tout en gardant
word ouvert ....
si on pouvait me donner le plus de detail possible tel que la declaration
de
Voici deux macros testées uniquement avec Excel et Word 97 (nom de la feuille xl à copier à adapter ainsi que le chemin et le nom du document Word à ouvrir). Dans la première, tu précises toi-même la plage à copier (ici A1:G10) : -- Sub CopieExcelWord() Dim PlageACopier As Range Dim AppWord As Object Set PlageACopier = Sheets("NomFeuille").Range("A1:G10") Set AppWord = CreateObject("Word.Application") PlageACopier.Copy With AppWord .Visible = True .documents.Open FileName:="C:TempDocAOuvrir.doc" .Selection.Paste End With ActiveWorkbook.Save Application.Quit End Sub -- Dans la deuxième macro, la plage à copier est définie automatiquement: le nombre de lignes est déterminé d'après la dernière cellule non vide de la col A et le nombre de colonnes d'après la dernière cellule non vide de la ligne 1. -- Sub CopiePlageAutoExcelWord() Dim NbLignes As Long Dim NbCols As Integer Dim Feuille As Worksheet Dim PlageACopier As Range Dim AppWord As Object Set Feuille = Sheets("NomFeuille") If WorksheetFunction.CountA(Cells) > 0 Then NbLignes = [A:A].Find("*", , , , , xlPrevious).Row NbCols = [1:1].Find("*", , , , , xlPrevious).Column Else MsgBox "La feuille ne contient pas de données" Exit Sub End If Set PlageACopier = Feuille.Range(Cells(1, 1), Cells(NbLignes, NbCols)) Set AppWord = CreateObject("Word.Application") PlageACopier.Copy With AppWord .Visible = True .documents.Open FileName:="C:TempDocAOuvrir.doc" .Selection.Paste End With ActiveWorkbook.Save Application.Quit End Sub -- Bonne soirée
Lydya
"Kamel" a écrit dans le message de news:
Bonjour,
Quelqu'un pourrait me donner une ébauche d'une macro ds les grandes lignes en VBA sous Excel qui ouvrirait un document word et qui copierait une feuille Excel dans ce document word, fermerait Excel mais tout en gardant word ouvert ....
si on pouvait me donner le plus de detail possible tel que la declaration de
lobjet document word .. etc (SVP !!!!!!)
Merci
Kamel
Merci bcp Lydya !!!!! ;-))
-- Bon courage ... Kamel "Lydya" a écrit dans le message de news:
Bonsoir Kamel,
Voici deux macros testées uniquement avec Excel et Word 97 (nom de la feuille xl à copier à adapter ainsi que le chemin et le nom du document Word
à ouvrir). Dans la première, tu précises toi-même la plage à copier (ici A1:G10) : -- Sub CopieExcelWord() Dim PlageACopier As Range Dim AppWord As Object Set PlageACopier = Sheets("NomFeuille").Range("A1:G10") Set AppWord = CreateObject("Word.Application") PlageACopier.Copy With AppWord .Visible = True .documents.Open FileName:="C:TempDocAOuvrir.doc" .Selection.Paste End With ActiveWorkbook.Save Application.Quit End Sub -- Dans la deuxième macro, la plage à copier est définie automatiquement: le nombre de lignes est déterminé d'après la dernière cellule non vide de la col A et le nombre de colonnes d'après la dernière cellule non vide de la ligne 1. -- Sub CopiePlageAutoExcelWord() Dim NbLignes As Long Dim NbCols As Integer Dim Feuille As Worksheet Dim PlageACopier As Range Dim AppWord As Object Set Feuille = Sheets("NomFeuille") If WorksheetFunction.CountA(Cells) > 0 Then NbLignes = [A:A].Find("*", , , , , xlPrevious).Row NbCols = [1:1].Find("*", , , , , xlPrevious).Column Else MsgBox "La feuille ne contient pas de données" Exit Sub End If Set PlageACopier = Feuille.Range(Cells(1, 1), Cells(NbLignes, NbCols)) Set AppWord = CreateObject("Word.Application") PlageACopier.Copy With AppWord .Visible = True .documents.Open FileName:="C:TempDocAOuvrir.doc" .Selection.Paste End With ActiveWorkbook.Save Application.Quit End Sub -- Bonne soirée
Lydya
"Kamel" a écrit dans le message de news:
Bonjour,
Quelqu'un pourrait me donner une ébauche d'une macro ds les grandes lignes
en VBA sous Excel qui ouvrirait un document word et qui copierait une feuille Excel dans ce document word, fermerait Excel mais tout en gardant
word ouvert ....
si on pouvait me donner le plus de detail possible tel que la declaration
de
lobjet document word .. etc (SVP !!!!!!)
Merci
Merci bcp Lydya !!!!! ;-))
--
Bon courage ...
Kamel
"Lydya" <prenomfirstname@libertysurf.fr> a écrit dans le message de
news:ufbC5Bp7DHA.3420@TK2MSFTNGP11.phx.gbl...
Bonsoir Kamel,
Voici deux macros testées uniquement avec Excel et Word 97 (nom de la
feuille xl à copier à adapter ainsi que le chemin et le nom du document
Word
à ouvrir).
Dans la première, tu précises toi-même la plage à copier (ici A1:G10) :
--
Sub CopieExcelWord()
Dim PlageACopier As Range
Dim AppWord As Object
Set PlageACopier = Sheets("NomFeuille").Range("A1:G10")
Set AppWord = CreateObject("Word.Application")
PlageACopier.Copy
With AppWord
.Visible = True
.documents.Open FileName:="C:TempDocAOuvrir.doc"
.Selection.Paste
End With
ActiveWorkbook.Save
Application.Quit
End Sub
--
Dans la deuxième macro, la plage à copier est définie automatiquement: le
nombre de lignes est déterminé d'après la dernière cellule non vide de la
col A et le nombre de colonnes d'après la dernière cellule non vide de la
ligne 1.
--
Sub CopiePlageAutoExcelWord()
Dim NbLignes As Long
Dim NbCols As Integer
Dim Feuille As Worksheet
Dim PlageACopier As Range
Dim AppWord As Object
Set Feuille = Sheets("NomFeuille")
If WorksheetFunction.CountA(Cells) > 0 Then
NbLignes = [A:A].Find("*", , , , , xlPrevious).Row
NbCols = [1:1].Find("*", , , , , xlPrevious).Column
Else
MsgBox "La feuille ne contient pas de données"
Exit Sub
End If
Set PlageACopier = Feuille.Range(Cells(1, 1), Cells(NbLignes, NbCols))
Set AppWord = CreateObject("Word.Application")
PlageACopier.Copy
With AppWord
.Visible = True
.documents.Open FileName:="C:TempDocAOuvrir.doc"
.Selection.Paste
End With
ActiveWorkbook.Save
Application.Quit
End Sub
--
Bonne soirée
Lydya
"Kamel" <kamel@bogoss.com> a écrit dans le message de
news:uUkLRXl7DHA.2416@TK2MSFTNGP10.phx.gbl...
Bonjour,
Quelqu'un pourrait me donner une ébauche d'une macro ds les grandes
lignes
en VBA sous Excel qui ouvrirait un document word et qui copierait une
feuille Excel dans ce document word, fermerait Excel mais tout en
gardant
word ouvert ....
si on pouvait me donner le plus de detail possible tel que la
declaration
-- Bon courage ... Kamel "Lydya" a écrit dans le message de news:
Bonsoir Kamel,
Voici deux macros testées uniquement avec Excel et Word 97 (nom de la feuille xl à copier à adapter ainsi que le chemin et le nom du document Word
à ouvrir). Dans la première, tu précises toi-même la plage à copier (ici A1:G10) : -- Sub CopieExcelWord() Dim PlageACopier As Range Dim AppWord As Object Set PlageACopier = Sheets("NomFeuille").Range("A1:G10") Set AppWord = CreateObject("Word.Application") PlageACopier.Copy With AppWord .Visible = True .documents.Open FileName:="C:TempDocAOuvrir.doc" .Selection.Paste End With ActiveWorkbook.Save Application.Quit End Sub -- Dans la deuxième macro, la plage à copier est définie automatiquement: le nombre de lignes est déterminé d'après la dernière cellule non vide de la col A et le nombre de colonnes d'après la dernière cellule non vide de la ligne 1. -- Sub CopiePlageAutoExcelWord() Dim NbLignes As Long Dim NbCols As Integer Dim Feuille As Worksheet Dim PlageACopier As Range Dim AppWord As Object Set Feuille = Sheets("NomFeuille") If WorksheetFunction.CountA(Cells) > 0 Then NbLignes = [A:A].Find("*", , , , , xlPrevious).Row NbCols = [1:1].Find("*", , , , , xlPrevious).Column Else MsgBox "La feuille ne contient pas de données" Exit Sub End If Set PlageACopier = Feuille.Range(Cells(1, 1), Cells(NbLignes, NbCols)) Set AppWord = CreateObject("Word.Application") PlageACopier.Copy With AppWord .Visible = True .documents.Open FileName:="C:TempDocAOuvrir.doc" .Selection.Paste End With ActiveWorkbook.Save Application.Quit End Sub -- Bonne soirée
Lydya
"Kamel" a écrit dans le message de news:
Bonjour,
Quelqu'un pourrait me donner une ébauche d'une macro ds les grandes lignes
en VBA sous Excel qui ouvrirait un document word et qui copierait une feuille Excel dans ce document word, fermerait Excel mais tout en gardant
word ouvert ....
si on pouvait me donner le plus de detail possible tel que la declaration
de
lobjet document word .. etc (SVP !!!!!!)
Merci
Kamel
Merci bcp !!!
-- Bon courage ... Kamel "Daniel.j" a écrit dans le message de news:%
Une page sur ce sujet: http://dj.joss.free.fr/word.htm
Daniel "Kamel" a écrit dans le message de news:
| Bonjour, | | Quelqu'un pourrait me donner une ébauche d'une macro ds les grandes lignes
| en VBA sous Excel qui ouvrirait un document word et qui copierait une | feuille Excel dans ce document word, fermerait Excel mais tout en gardant
| word ouvert .... | | si on pouvait me donner le plus de detail possible tel que la declaration de
Kamel, Dans la deuxième macro, après: Set Feuille = Sheets("NomFeuille") Il faut ajouter: Feuille.Activate
-- Lydya
"Lydya" a écrit dans le message de news:
Bonsoir Kamel,
Voici deux macros testées uniquement avec Excel et Word 97 (nom de la feuille xl à copier à adapter ainsi que le chemin et le nom du document Word
à ouvrir). Dans la première, tu précises toi-même la plage à copier (ici A1:G10) : -- Sub CopieExcelWord() Dim PlageACopier As Range Dim AppWord As Object Set PlageACopier = Sheets("NomFeuille").Range("A1:G10") Set AppWord = CreateObject("Word.Application") PlageACopier.Copy With AppWord .Visible = True .documents.Open FileName:="C:TempDocAOuvrir.doc" .Selection.Paste End With ActiveWorkbook.Save Application.Quit End Sub -- Dans la deuxième macro, la plage à copier est définie automatiquement: le nombre de lignes est déterminé d'après la dernière cellule non vide de la col A et le nombre de colonnes d'après la dernière cellule non vide de la ligne 1. -- Sub CopiePlageAutoExcelWord() Dim NbLignes As Long Dim NbCols As Integer Dim Feuille As Worksheet Dim PlageACopier As Range Dim AppWord As Object Set Feuille = Sheets("NomFeuille") If WorksheetFunction.CountA(Cells) > 0 Then NbLignes = [A:A].Find("*", , , , , xlPrevious).Row NbCols = [1:1].Find("*", , , , , xlPrevious).Column Else MsgBox "La feuille ne contient pas de données" Exit Sub End If Set PlageACopier = Feuille.Range(Cells(1, 1), Cells(NbLignes, NbCols)) Set AppWord = CreateObject("Word.Application") PlageACopier.Copy With AppWord .Visible = True .documents.Open FileName:="C:TempDocAOuvrir.doc" .Selection.Paste End With ActiveWorkbook.Save Application.Quit End Sub -- Bonne soirée
Lydya
"Kamel" a écrit dans le message de news:
Bonjour,
Quelqu'un pourrait me donner une ébauche d'une macro ds les grandes lignes
en VBA sous Excel qui ouvrirait un document word et qui copierait une feuille Excel dans ce document word, fermerait Excel mais tout en gardant
word ouvert ....
si on pouvait me donner le plus de detail possible tel que la declaration
de
lobjet document word .. etc (SVP !!!!!!)
Merci
Kamel,
Dans la deuxième macro, après:
Set Feuille = Sheets("NomFeuille")
Il faut ajouter:
Feuille.Activate
--
Lydya
"Lydya" <prenomfirstname@libertysurf.fr> a écrit dans le message de
news:ufbC5Bp7DHA.3420@TK2MSFTNGP11.phx.gbl...
Bonsoir Kamel,
Voici deux macros testées uniquement avec Excel et Word 97 (nom de la
feuille xl à copier à adapter ainsi que le chemin et le nom du document
Word
à ouvrir).
Dans la première, tu précises toi-même la plage à copier (ici A1:G10) :
--
Sub CopieExcelWord()
Dim PlageACopier As Range
Dim AppWord As Object
Set PlageACopier = Sheets("NomFeuille").Range("A1:G10")
Set AppWord = CreateObject("Word.Application")
PlageACopier.Copy
With AppWord
.Visible = True
.documents.Open FileName:="C:TempDocAOuvrir.doc"
.Selection.Paste
End With
ActiveWorkbook.Save
Application.Quit
End Sub
--
Dans la deuxième macro, la plage à copier est définie automatiquement: le
nombre de lignes est déterminé d'après la dernière cellule non vide de la
col A et le nombre de colonnes d'après la dernière cellule non vide de la
ligne 1.
--
Sub CopiePlageAutoExcelWord()
Dim NbLignes As Long
Dim NbCols As Integer
Dim Feuille As Worksheet
Dim PlageACopier As Range
Dim AppWord As Object
Set Feuille = Sheets("NomFeuille")
If WorksheetFunction.CountA(Cells) > 0 Then
NbLignes = [A:A].Find("*", , , , , xlPrevious).Row
NbCols = [1:1].Find("*", , , , , xlPrevious).Column
Else
MsgBox "La feuille ne contient pas de données"
Exit Sub
End If
Set PlageACopier = Feuille.Range(Cells(1, 1), Cells(NbLignes, NbCols))
Set AppWord = CreateObject("Word.Application")
PlageACopier.Copy
With AppWord
.Visible = True
.documents.Open FileName:="C:TempDocAOuvrir.doc"
.Selection.Paste
End With
ActiveWorkbook.Save
Application.Quit
End Sub
--
Bonne soirée
Lydya
"Kamel" <kamel@bogoss.com> a écrit dans le message de
news:uUkLRXl7DHA.2416@TK2MSFTNGP10.phx.gbl...
Bonjour,
Quelqu'un pourrait me donner une ébauche d'une macro ds les grandes
lignes
en VBA sous Excel qui ouvrirait un document word et qui copierait une
feuille Excel dans ce document word, fermerait Excel mais tout en
gardant
word ouvert ....
si on pouvait me donner le plus de detail possible tel que la
declaration
Kamel, Dans la deuxième macro, après: Set Feuille = Sheets("NomFeuille") Il faut ajouter: Feuille.Activate
-- Lydya
"Lydya" a écrit dans le message de news:
Bonsoir Kamel,
Voici deux macros testées uniquement avec Excel et Word 97 (nom de la feuille xl à copier à adapter ainsi que le chemin et le nom du document Word
à ouvrir). Dans la première, tu précises toi-même la plage à copier (ici A1:G10) : -- Sub CopieExcelWord() Dim PlageACopier As Range Dim AppWord As Object Set PlageACopier = Sheets("NomFeuille").Range("A1:G10") Set AppWord = CreateObject("Word.Application") PlageACopier.Copy With AppWord .Visible = True .documents.Open FileName:="C:TempDocAOuvrir.doc" .Selection.Paste End With ActiveWorkbook.Save Application.Quit End Sub -- Dans la deuxième macro, la plage à copier est définie automatiquement: le nombre de lignes est déterminé d'après la dernière cellule non vide de la col A et le nombre de colonnes d'après la dernière cellule non vide de la ligne 1. -- Sub CopiePlageAutoExcelWord() Dim NbLignes As Long Dim NbCols As Integer Dim Feuille As Worksheet Dim PlageACopier As Range Dim AppWord As Object Set Feuille = Sheets("NomFeuille") If WorksheetFunction.CountA(Cells) > 0 Then NbLignes = [A:A].Find("*", , , , , xlPrevious).Row NbCols = [1:1].Find("*", , , , , xlPrevious).Column Else MsgBox "La feuille ne contient pas de données" Exit Sub End If Set PlageACopier = Feuille.Range(Cells(1, 1), Cells(NbLignes, NbCols)) Set AppWord = CreateObject("Word.Application") PlageACopier.Copy With AppWord .Visible = True .documents.Open FileName:="C:TempDocAOuvrir.doc" .Selection.Paste End With ActiveWorkbook.Save Application.Quit End Sub -- Bonne soirée
Lydya
"Kamel" a écrit dans le message de news:
Bonjour,
Quelqu'un pourrait me donner une ébauche d'une macro ds les grandes lignes
en VBA sous Excel qui ouvrirait un document word et qui copierait une feuille Excel dans ce document word, fermerait Excel mais tout en gardant
word ouvert ....
si on pouvait me donner le plus de detail possible tel que la declaration