Copier coller de excel vers word transparent sans couleur

Le
Luc
Bonjour,
J'ai un tableau dans excel 2010 et je voudrais le copier dans word 2010
Le tableau comporte des couleurs
Comment faire un copier coller sans couleur, transparent
J'y arrivai avant avec excel et word 2003 en collage special image

Merci d'avance de vos lumieres
Luc
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
MichD
Le #25283812
Bonjour,

Un exemple de code pour copier la plage A1:D5
vers un tableau d'un nouveau fichier Word sans
la couleur. Le formatage des bordures est optionnel.


'--------------------------------------------------
Sub test()
Dim Rg As Range
Dim Wd As Object
Dim Dc As Object, C As Column
Dim T As Object, P As Row
Dim A As Integer, B As Integer
Dim Bb As Border

'Defined range to copy
With Worksheets("Feuil1")
Set Rg = .Range("A1:D5")
End With

Set Wd = CreateObject("Word.Application")
Wd.Visible = True
Set Dc = Wd.Documents.Add

Set T = Dc.Tables.Add(Range:Ü.Range, _
NumRows:=Rg.Rows.Count, _
NumColumns:=Rg.Columns.Count)

For A = 1 To Rg.Rows.Count
For B = 1 To Rg.Columns.Count
T.Cell(A, B).Range = Rg(A, B)
Next
Next

'To apply borders if necessary
With T
For Each C In .Range.Columns
C.Borders(wdBorderHorizontal).Visible = True
Next
For Each P In .Range.Rows
P.Borders(wdBorderVertical).Visible = True
Next
For A = -4 To -1
.Range.Borders(A) = True
Next
End With

End Sub
'--------------------------------------------------

MichD
---------------------------------------------------------------
Luc
Le #25286662
MichD avait écrit le 15/03/2013 :
Bonjour,

Un exemple de code pour copier la plage A1:D5
vers un tableau d'un nouveau fichier Word sans la couleur. Le formatage des
bordures est optionnel.


'--------------------------------------------------
Sub test()
Dim Rg As Range
Dim Wd As Object
Dim Dc As Object, C As Column
Dim T As Object, P As Row
Dim A As Integer, B As Integer
Dim Bb As Border

'Defined range to copy
With Worksheets("Feuil1")
Set Rg = .Range("A1:D5")
End With

Set Wd = CreateObject("Word.Application")
Wd.Visible = True
Set Dc = Wd.Documents.Add

Set T = Dc.Tables.Add(Range:Ü.Range, _
NumRows:=Rg.Rows.Count, _
NumColumns:=Rg.Columns.Count)

For A = 1 To Rg.Rows.Count
For B = 1 To Rg.Columns.Count
T.Cell(A, B).Range = Rg(A, B)
Next
Next

'To apply borders if necessary
With T
For Each C In .Range.Columns
C.Borders(wdBorderHorizontal).Visible = True
Next
For Each P In .Range.Rows
P.Borders(wdBorderVertical).Visible = True
Next
For A = -4 To -1
.Range.Borders(A) = True
Next
End With

End Sub
'--------------------------------------------------

MichD
---------------------------------------------------------------



ok bien recu, mais un peu neophyte dans les codes
comment on fait pour rentrer les codes ?
Merci
Luc
MichD
Le #25286762
| comment on fait pour rentrer les codes ?

Tu ouvres l'éditeur de code (macro) d'Excel.
Tu peux utiliser le raccourci clavier : Alt + F11

Dans la fenêtre ouvrante/ barre de menu / insertion /
tu ajoutes un module standard.
Tu copies le code dans ce module.

Après dans la procédure, tu dois définir ces variables :

With Worksheets("Feuil1") 'Nom de la feuille où sont les données
Set Rg = .Range("A1:D5") ' la plage de cellule à copier dans Word
End With


MichD
---------------------------------------------------------------
Publicité
Poster une réponse
Anonyme