Microsoft 365 Problème de VBA

ludo170967

XLDnaute Nouveau
bonjour le fil,
je viens de créer un fichier avec mes quelques connaissance en vba. mais malheureusement à la fin de la réalisation de mon code ça ne fonctionne pas. le code bloque lorsque je clic sur valider.
Pouvez-vous m'aider
Merci
 

Staple1600

XLDnaute Barbatruc
Re

test OK avec celui-ci
VB:
Sub valider()
Dim DL&, adr, i&
adrs = Split("B14 B11 B17 E11 E14 E17")
DL = Sheets("Base de données").Cells(Rows.Count, 1).End(3).Row
For i = 0 To UBound(adrs)
Sheets("Base de données").Cells(DL + 1, i + 1).Value = Sheets("saisie").Range(adrs(i)).Value
Next
End Sub
NB: Remplacer le code existant par celui-ci.
 

ludo170967

XLDnaute Nouveau
Re

test OK avec celui-ci
VB:
Sub valider()
Dim DL&, adr, i&
adrs = Split("B14 B11 B17 E11 E14 E17")
DL = Sheets("Base de données").Cells(Rows.Count, 1).End(3).Row
For i = 0 To UBound(adrs)
Sheets("Base de données").Cells(DL + 1, i + 1).Value = Sheets("saisie").Range(adrs(i)).Value
Next
End Sub
NB: Remplacer le code existant par celui-ci.
re,
merci beaucoup pour le code. ou puis-je mettre la ligne call effacer dans le code pour que lorsque la validation est faite les cellules b11,b14,b17, e11, e14 et e17 s'effacent automatiquement.
merci
ludo
 

Staple1600

XLDnaute Barbatruc
Ou alors

Deux en une avec cette nouvelle version de valider ;)
VB:
Sub valider()
Dim DL&, adr, i&
adrs = Split("B14 B11 B17 E11 E14 E17")
DL = Sheets("Base de données").Cells(Rows.Count, 1).End(3).Row
For i = 0 To UBound(adrs)
Sheets("Base de données").Cells(DL + 1, i + 1).Value = Sheets("saisie").Range(adrs(i)).Value
Next
Sheets("saisie").Range("B11,B14,B17,E11,E14,E17") = ""
End Sub
 

Statistiques des forums

Discussions
314 603
Messages
2 111 079
Membres
111 035
dernier inscrit
Gharbi