XL 2016 resumer code vba

lamho27

XLDnaute Occasionnel
bonjour a tous
j'ai une code vba integer mais trop long , pouvez-vous me modifier pour simplement mon code; merci d'avance
Sub Button()
Dim j As Integer
j = 1
For i = 1 To 40
If Not IsEmpty(Range("B" & i).Value) Then
Range("H" & j + 1).Value = Range("B" & i).Value
j = j + 1
End If
Next i
j = 1
For i = 1 To 40
If Not IsEmpty(Range("C" & i).Value) Then
Range("I" & j + 1).Value = Range("C" & i).Value
j = j + 1
End If
Next i
j = 1
For i = 1 To 40
If Not IsEmpty(Range("D" & i).Value) Then
Range("J" & j + 1).Value = Range("D" & i).Value
j = j + 1
End If
Next i
j = 1
For i = 1 To 40
If Not IsEmpty(Range("E" & i).Value) Then
Range("K" & j + 1).Value = Range("E" & i).Value
j = j + 1
End If
Next i
j = 1
For i = 1 To 40
If Not IsEmpty(Range("F" & i).Value) Then
Range("L" & j + 1).Value = Range("F" & i).Value
j = j + 1
End If
Next i
j = 1
For i = 1 To 40
If Not IsEmpty(Range("G" & i).Value) Then
Range("M" & j + 1).Value = Range("G" & i).Value
j = j + 1
End If
Next i
End Sub
 

Staple1600

XLDnaute Barbatruc
Bonjour mapomme

C'est la même méthode, non?
'[B1:G32].Copy: Cells(Rows.Count, "H").End(xlUp)(2).PasteSpecial -4104
.Range("B:G").Copy .Range("H:M")
.Range("H:M").SpecialCells(xlCellTypeBlanks).Delete Shift:=xlUp
'idem:Selection.SpecialCells(4).Delete -4162
Sauf que tu copies les colonnes entières

@lamho27
On se sait pas comment est alimentée la plage B1:G32.
Est-ce qu’après la recopie, elle est effacée manuellement?
Et qu'ensuite tu y saisis de nouvelles dates?
 

Staple1600

XLDnaute Barbatruc
Re mapomme

Tu peux m'expliquer le pourquoi de ta boucle, stp?
For i = 1 To .Rows.Count
If Application.WorksheetFunction.Count(.Range("h" & i & ":m" & i)) = 0 Then Exit For
Next i

(Je suis pas encore bien réveillé ;) )

EDITION:
Il me manquait juste cette ligne, si j"ai bien compris
VB:
Sub aa()
Application.ScreenUpdating = False
If Len([H2]) > 0 Then Exit Sub
[B1:G32].Copy: [H2].PasteSpecial Paste:=xlPasteAll, SkipBlanks:=True
Selection.SpecialCells(4).Delete -4162: [H2].Select
End Sub
 

vgendron

XLDnaute Barbatruc
Hello le forum
bizarre effectivement, ma proposition ne fonctionne pas sur le fichier posté par Lamho27, lequel contient des dates

alors que ca fonctionnait bien sur le fichier que je m'étais créé et qui ne contenait que des chiffres...
cf feuille2 du classeur

sans doute qu'excel n'aime pas la correspondance xlcelltypeconstant avec des dates....
 

Pièces jointes

  • Classeur2.xlsm
    17.2 KB · Affichages: 24

Membres actuellement en ligne

Statistiques des forums

Discussions
314 144
Messages
2 106 357
Membres
109 563
dernier inscrit
sylla121