Macro Copyer coler

Fermé
Dandy_danbe Messages postés 108 Date d'inscription mardi 18 mars 2014 Statut Membre Dernière intervention 11 avril 2022 - 24 nov. 2017 à 08:15
Dandy_danbe Messages postés 108 Date d'inscription mardi 18 mars 2014 Statut Membre Dernière intervention 11 avril 2022 - 25 nov. 2017 à 09:07
Bonjour,

Excel Trouver la première cellule vide de ligne1 et coller des nombres copier dans un autre page a droite a partir de la première cellule vide
je m'explique la feuille 2 génère des nombre 12 x 26 nombres qui sont mis dans 12 colonne (a1:l26)
Ma feuille 1 contient déjà des nombres, cellule (b1:m26)
Je dois copier les nombres de la feuille 2 a la feuille 1premiere cellule vide (n1:n26)
J'ai déjà une macro qui fait cela, mais il incère 12 colonnes a partir de b2
Ce qui fait que je dois a chaque fois trié le tableau.
Ceci est la macro en question
Sub Kaarten_opslaan()
'
' Kaarten_opslaan Macro
'

'
Sheets("Kaarten").Select
Columns("B:M").Select
Selection.Insert Shift:=xlToRight, CopyOrigin:=xlFormatFromLeftOrAbove
Range("B1").Select
Sheets("Kaarten Generator").Select
Range("AA1:AL26").Select
Selection.Copy
Sheets("Kaarten").Select
Range("B1").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Selection.PasteSpecial Paste:=xlPasteFormats, Operation:=xlNone, _
SkipBlanks:=False, Transpose:=False
Range("N29:N55").Select
Application.CutCopyMode = False
Selection.AutoFill Destination:=Range("B29:N55"), Type:=xlFillDefault
Range("B29:N55").Select
ActiveWindow.SmallScroll Down:=-15
Range("B1").Select
Sheets("Kaarten Generator").Select
ActiveWindow.SmallScroll ToRight:=-11
Range("N1").Select
Selection.Copy
ActiveWindow.ScrollColumn = 4
ActiveWindow.ScrollColumn = 3
ActiveWindow.ScrollColumn = 2
ActiveWindow.ScrollColumn = 1
Range("C1").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Application.CutCopyMode = False
End Sub
Sub sorteren()
'
' sorteren Macro
'

'
ActiveWindow.SmallScroll Down:=-9
Range("B1:M26").Select
ActiveWorkbook.Worksheets("Kaarten").Sort.SortFields.Clear
ActiveWorkbook.Worksheets("Kaarten").Sort.SortFields.Add Key:=Range("B1:M1") _
, SortOn:=xlSortOnValues, Order:=xlDescending, DataOption:=xlSortNormal
With ActiveWorkbook.Worksheets("Kaarten").Sort
.SetRange Range("B1:M26")
.Header = xlGuess
.MatchCase = False
.Orientation = xlLeftToRight
.SortMethod = xlPinYin
.Apply
End With
Range("B1").Select
End Sub

Merci d'avance pour les eventuele réponses
A voir également:

1 réponse

gbinforme Messages postés 14946 Date d'inscription lundi 18 octobre 2004 Statut Contributeur Dernière intervention 24 juin 2020 4 685
24 nov. 2017 à 09:04
Bonjour Dandy_danbe,

Si j'ai compris ta démarche, je te propose ta macro modifiée qui peut empiler autant de copies que tu veux en colonnes B:M
Sub Kaarten_opslaan()
'
' Kaarten_opslaan Macro
'
Sheets("Kaarten Generator").Range("AA1:AL26").Copy
With Sheets("Kaarten")
    With .Range("B" & Cells(Rows.Count, 2).End(xlUp).Row + 1)
        .PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks:=False, Transpose:=False
        .PasteSpecial Paste:=xlPasteFormats, Operation:=xlNone, SkipBlanks:=False, Transpose:=False
    End With
    With .Sort
        With .SortFields
            .Clear
            .Add Key:=Range("B1"), SortOn:=xlSortOnValues, Order:=xlDescending, DataOption:=xlSortNormal
        End With
        .SetRange Range("B1:M" & Cells(Rows.Count, 2).End(xlUp).Row)
        .Header = xlYes
        .MatchCase = False
        .Orientation = xlLeftToRight
        .SortMethod = xlPinYin
        .Apply
    End With
End With
End Sub
0
Dandy_danbe Messages postés 108 Date d'inscription mardi 18 mars 2014 Statut Membre Dernière intervention 11 avril 2022
24 nov. 2017 à 09:09
bonjour mon amis
je vais voir ca tous de suite , et te tien au courant
merci
0
Dandy_danbe Messages postés 108 Date d'inscription mardi 18 mars 2014 Statut Membre Dernière intervention 11 avril 2022
24 nov. 2017 à 09:16
c'est pas tous a fait ca la copi c'est efectuer en b:m
donc devant les nombre existant le but est de mettre c'est nombres derierre la denierre colonne remlis ci tu regarde la permierre ligne 13,14,-23-24-ensuite 1,2,3, donc les cartes ne sont plus dans l'ordre,
les lignes de 28 a 56 conte les cellule exacte
mais encore une fois merci car tu m'est d'un grand secour
N° 13 14 15 16 17 18 19 20 21 22 23 24 1 2 3 4 5 6 7 8 9 10 11 12
1 18 13 6 17 10 17 8 7 11 6 15 8 6 3 2 16 18 5 8 33 22 37 41 73
2 1 12 8 13 17 5 13 16 10 15 18 9 17 1 4 10 9 15 1 10 9 15 11 7
3 11 16 13 7 14 1 1 9 4 2 3 4 12 15 7 1 10 18 11 1 15 2 12 15
4 10 2 14 5 6 2 18 3 2 18 11 6 2 11 15 15 14 7 16 17 2 1 6 8
5 17 5 10 18 4 8 14 6 15 10 6 13 4 8 13 7 11 17 18 3 7 6 2 9
6 20 33 34 35 31 35 36 30 27 36 34 36 30 25 29 20 27 30 27 22 33 27 34 35
7 33 22 21 26 34 21 21 33 29 29 32 31 31 36 36 24 26 27 22 20 22 24 35 30
8 28 24 25 31 35 25 25 24 36 25 36 26 22 22 33 34 31 33 35 34 36 34 30 23
9 23 23 30 20 29 22 29 32 35 20 31 28 32 26 28 33 36 26 20 35 30 22 29 22
10 21 29 19 22 21 34 20 36 31 19 25 25 24 21 31 29 34 32 24 30 25 36 24 36
11 46 52 52 42 45 48 44 52 47 51 49 40 39 42 52 48 40 39 47 41 52 53 49 49
12 50 39 54 41 44 41 39 53 45 43 52 38 49 49 44 39 41 51 53 44 42 51 54 52
13 45 49 49 45 48 47 40 45 43 48 39 54 53 38 47 45 54 37 42 45 48 38 52 38
14 41 38 37 52 42 51 50 39 44 47 45 42 50 41 45 52 42 48 38 54 37 49 47 46
15 54 47 39 48 46 38 41 54 39 50 50 46 37 52 39 38 51 53 52 37 39 54 48 42
16 71 59 58 57 65 67 61 58 56 71 59 60 64 58 59 62 61 57 72 71 62 67 60 57
17 59 69 61 70 58 72 72 64 67 57 66 62 55 63 64 71 66 62 57 57 56 61 59 66
18 70 64 59 56 55 56 56 71 64 70 72 57 57 61 58 59 60 68 65 67 61 71 57 71
19 68 60 55 72 57 65 63 68 71 55 58 68 62 56 69 68 68 59 59 59 68 64 65 63
20 62 65 65 59 62 71 58 59 61 63 60 72 63 67 65 64 64 55 67 62 65 66 68 59
21 74 84 79 83 84 77 84 74 84 78 73 83 73 89 84 82 78 73 86 81 77 74 87 81
22 90 90 82 73 85 79 81 86 82 75 85 78 74 80 88 77 73 84 78 87 89 82 81 79
23 77 89 80 87 77 75 88 88 85 83 80 80 87 85 73 79 76 81 79 82 90 78 80 89
24 79 74 85 84 83 87 89 73 75 74 84 89 90 73 85 85 81 74 80 73 73 90 82 73
25 86 88 83 89 89 86 87 82 76 79 87 90 84 78 80 75 86 82 73 77 74 79 76 78
kaart N°
N° 1 2 3 4 5 6 7 8 9 10 11 12
Bingo 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
kruis 0 0 0 0 0 0 0 0 0 0 0 0
hoeken 0 0 0 0 0 0 0 0 0 0 0 0
0
gbinforme Messages postés 14946 Date d'inscription lundi 18 octobre 2004 Statut Contributeur Dernière intervention 24 juin 2020 4 685
25 nov. 2017 à 08:56
Bonjour,

J'ai sans doute mal compris tes explications qui sont approximatives
Range("AA1:AL26") / 12 x 26 nombres qui sont mis dans 12 colonne (a1:l26) ???
Alors, comme ceci, cela devrait peut-être mieux aller
Sub Kaarten_opslaan()
'
' Kaarten_opslaan Macro
'
Sheets("Kaarten Generator").Range("AA1:AL26").Copy
With Sheets("Kaarten")
    With .Cells(1, .Cells(1, Columns.Count).End(xlToLeft).Column + 1)
        .PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks:=False, Transpose:=False
        .PasteSpecial Paste:=xlPasteFormats, Operation:=xlNone, SkipBlanks:=False, Transpose:=False
    End With
End With
End Sub
0
Dandy_danbe Messages postés 108 Date d'inscription mardi 18 mars 2014 Statut Membre Dernière intervention 11 avril 2022 > gbinforme Messages postés 14946 Date d'inscription lundi 18 octobre 2004 Statut Contributeur Dernière intervention 24 juin 2020
25 nov. 2017 à 09:07
Bonjour;
a premier essai ca l l'aire parfait
un grand merci ;
j'ai remarque que toutes mes question sont résolus par toi et je ne peut que te remercier d'avantage.
je fait encore quelque essai te tien au courant
0