Macro: mise en forme tableau X dans Y avec memes valeurs

Bonjour,

Je souhaite copier le tableau tel qu'il est dans un autre excel sans perdre ses couleurs, formules ou autres.

Voici en pièce jointe le fichier modifié. Il s'agit d'une partie des données, il est fait de plusieurs centaine de millier de lignes en réalité.

D'avance merci pour votre aide.

Changul

18servers-list.xlsx (33.31 Ko)

Bonjour

• Sélectionner la cellule A1 et maintenez enfoncée la touche Majuscule (Shift)

• Cliquer dans le bandeau sur "Rechercher et sélectionner"

• Cliquer sur "Atteindre"

• Cliquer sur "Denière cellule"

• Cliquer sur "OK"

• Copier la plage qui s’est sélectionnée

• Aller la recopier n’importe où pourvu qu’elle ait assez de place : autre feuille, autre fichier…

Ok ?

Bye !

Bonjour,

Je pense que je me suis mal exprimé désolé...

@gmb, L'exemple que tu me donnes je sais le faire, merci.

Mais, je souhaite savoir si qq'1 sait comment compléter, à la suite de la macro ci-dessous, afin de garder toutes les valeurs telles que dates, couleurs etc...

Mon problème:

la copie dans un autre fichier existant fonctionne très bien. Mais les dates copiées sont en nombre, les couleurs non prise en charges, le centrage ne fonctionne pas, le % transformé en nombre etc...

Je vous joins les 2 fichiers pour mieux comprendre (ils sont modifiés car il s'agit des tableaux du boulot)

PS: Je ne connais rien en VBA, je l'ai appris sur le tas... soyez un peu indulgent SVP. Merci

Par avance je vous remercie de votre aide.

==========================

Sub TEST1()

'

' TEST1 Macro

'

'

Application.WindowState = xlMinimized

Application.WindowState = xlNormal

Sheets("Template").Select

Range("A2").Select

ActiveWindow.LargeScroll ToRight:=8

Range("A2:DL12").Select

Selection.Copy

Cells.Select

Workbooks.Open Filename:="C:\ABCDR\SERVERS List.xlsx"

Sheets("May-2017").Select

'Range("A1").Select

'Rows("80066:80066").Select

Cells(Rows.Count, 1).End(xlUp).Offset(1, 0).Select

Selection.PasteSpecial Paste:=xlPasteFormulas, Operation:=xlNone, _

SkipBlanks:=False, Transpose:=False

'Private Sub Workbook_SheetSelectionChange(ByVal Sh As Object, ByVal Target As Range)

If UseMyFormatPainter Then

Selection.PasteSpecial xlPasteFormats

UseMyFormatPainter = False

Application.CutCopyMode = 0 ' turns "off" the dotted border around the copied cell

End If

ActiveWindow.LargeScroll ToRight:=4

ActiveWindow.ScrollColumn = 38

ActiveWindow.ScrollColumn = 39

ActiveWindow.ScrollColumn = 40

ActiveWindow.ScrollColumn = 42

ActiveWindow.ScrollColumn = 43

ActiveWindow.ScrollColumn = 47

ActiveWindow.ScrollColumn = 48

ActiveWindow.ScrollColumn = 51

ActiveWindow.ScrollColumn = 53

ActiveWindow.ScrollColumn = 54

ActiveWindow.ScrollColumn = 55

ActiveWindow.ScrollColumn = 59

ActiveWindow.ScrollColumn = 60

ActiveWindow.ScrollColumn = 61

ActiveWindow.ScrollColumn = 63

ActiveWindow.ScrollColumn = 66

ActiveWindow.ScrollColumn = 67

ActiveWindow.ScrollColumn = 68

ActiveWindow.ScrollColumn = 71

ActiveWindow.ScrollColumn = 73

ActiveWindow.ScrollColumn = 74

ActiveWindow.ScrollColumn = 75

ActiveWindow.ScrollColumn = 76

ActiveWindow.ScrollColumn = 77

ActiveWindow.ScrollColumn = 78

ActiveWindow.ScrollColumn = 79

ActiveWindow.ScrollColumn = 80

ActiveWindow.ScrollColumn = 81

ActiveWindow.ScrollColumn = 83

ActiveWindow.ScrollColumn = 84

ActiveWindow.ScrollColumn = 88

ActiveWindow.ScrollColumn = 89

ActiveWindow.ScrollColumn = 90

ActiveWindow.ScrollColumn = 91

ActiveWindow.ScrollColumn = 92

ActiveWindow.ScrollColumn = 93

ActiveWindow.ScrollColumn = 94

ActiveWindow.ScrollColumn = 95

ActiveWindow.ScrollColumn = 96

ActiveWindow.ScrollColumn = 97

ActiveWindow.ScrollColumn = 98

ActiveWindow.ScrollColumn = 99

ActiveWindow.ScrollColumn = 100

ActiveWindow.ScrollColumn = 101

ActiveWindow.ScrollColumn = 102

ActiveWindow.ScrollColumn = 103

ActiveWindow.ScrollColumn = 104

ActiveWindow.ScrollColumn = 105

ActiveWindow.ScrollColumn = 106

ActiveWindow.ScrollColumn = 107

ActiveWindow.ScrollColumn = 108

ActiveWindow.ScrollColumn = 109

ActiveWindow.ScrollColumn = 110

ActiveWindow.ScrollColumn = 109

ActiveWindow.ScrollColumn = 108

ActiveWindow.ScrollColumn = 106

ActiveWindow.ScrollColumn = 104

ActiveWindow.ScrollColumn = 103

ActiveWindow.ScrollColumn = 102

ActiveWindow.ScrollColumn = 100

ActiveWindow.ScrollColumn = 97

ActiveWindow.ScrollColumn = 91

ActiveWindow.ScrollColumn = 83

ActiveWindow.ScrollColumn = 82

ActiveWindow.ScrollColumn = 81

ActiveWindow.ScrollColumn = 78

ActiveWindow.ScrollColumn = 76

ActiveWindow.ScrollColumn = 73

ActiveWindow.ScrollColumn = 72

ActiveWindow.ScrollColumn = 69

ActiveWindow.ScrollColumn = 68

ActiveWindow.ScrollColumn = 66

ActiveWindow.ScrollColumn = 65

ActiveWindow.ScrollColumn = 64

ActiveWindow.ScrollColumn = 63

ActiveWindow.ScrollColumn = 62

ActiveWindow.ScrollColumn = 61

ActiveWindow.ScrollColumn = 60

ActiveWindow.ScrollColumn = 59

ActiveWindow.ScrollColumn = 58

ActiveWindow.ScrollColumn = 57

ActiveWindow.ScrollColumn = 58

ActiveWindow.ScrollColumn = 59

ActiveWindow.ScrollColumn = 60

ActiveWindow.ScrollColumn = 61

ActiveWindow.ScrollColumn = 62

ActiveWindow.ScrollColumn = 63

ActiveWindow.ScrollColumn = 64

ActiveWindow.ScrollColumn = 65

ActiveWindow.ScrollColumn = 66

ActiveWindow.ScrollColumn = 67

ActiveWindow.ScrollColumn = 68

ActiveWindow.ScrollColumn = 69

ActiveWindow.ScrollColumn = 68

ActiveWindow.ScrollColumn = 67

ActiveWindow.ScrollColumn = 64

ActiveWindow.ScrollColumn = 62

ActiveWindow.ScrollColumn = 58

ActiveWindow.ScrollColumn = 56

ActiveWindow.ScrollColumn = 51

ActiveWindow.ScrollColumn = 49

ActiveWindow.ScrollColumn = 44

ActiveWindow.ScrollColumn = 40

ActiveWindow.ScrollColumn = 35

ActiveWindow.ScrollColumn = 33

ActiveWindow.ScrollColumn = 26

ActiveWindow.ScrollColumn = 24

ActiveWindow.ScrollColumn = 20

ActiveWindow.ScrollColumn = 19

ActiveWindow.ScrollColumn = 18

ActiveWindow.ScrollColumn = 15

ActiveWindow.ScrollColumn = 14

ActiveWindow.ScrollColumn = 11

ActiveWindow.ScrollColumn = 10

ActiveWindow.ScrollColumn = 9

ActiveWindow.ScrollColumn = 8

ActiveWindow.ScrollColumn = 7

ActiveWindow.ScrollColumn = 6

ActiveWindow.ScrollColumn = 5

ActiveWindow.ScrollColumn = 4

ActiveWindow.ScrollColumn = 3

ActiveWindow.ScrollColumn = 2

ActiveWindow.ScrollColumn = 1

ActiveWindow.SmallScroll Down:=7

Application.CutCopyMode = False

ActiveWorkbook.Save

Windows("Template.xlsm").Activate

End Sub

16template.xlsm (25.21 Ko)
16servers-list.xlsx (35.03 Ko)

Bonjour

Un essai à tester. Te convient-il ?

Bye !

25nouveau-dossier.zip (64.91 Ko)

Bonjour Gmb,

Ta Macro est une tuerie !!

Merci beaucoup

Cependant, je souhaite ne pas ouvrir le fichier "destinataire=SERVERS List.xlxs" , j'ai enlevé le cote (en vert ci-dessous) cela plante la macro.... :'(

Car le vrai fichier fait plus de 9Mo. Pour info, quand j'ouvre en même temps, la macro et ce gros fichier, le process excel plante ... Est-ce normal ?

Je te remercie pour ta bienveillance

changul

Sub CopieListeServeurs()

Bonjour

changul a écrit :

je souhaite ne pas ouvrir le fichier "destinataire=SERVERS List.xlxs"

Ça, je ne sais pas faire.

En revanche, je sais comment faire pour que la macro ouvre le fichier, fasse son travail et le referme, ce qui revient presque au même puisque l’utilisateur ne voit rien.

Mais il faut être sûr de l’adresse du fichier en question : j’ai pris celle que j’ai trouvé dans ta macro initiale.

A tester.

Bye !

20template.xlsm (33.78 Ko)

Re,

ça marche !

Je te remercie infiniment...pour tes aides précieuses.

A bientôt pour de nouvelles challenges ...

changul

Rechercher des sujets similaires à "macro mise forme tableau memes valeurs"