Bonjour, j'ai un peu le même problème mais aucune des solutions proposées ne fonctionnent !
Voici mon code :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 Sub surface() '(Cette partie là fonctionne ; elle prend bien la valeur de la cellule K1 et la colle dans la première cellule vide de la colonne Q 'Numéro de profil Range("K1").Select Selection.Copy Range("Q458").Select Selection.End(xlUp).Select Ligne = ActiveCell.Row Range("Q" & Ligne + 1).Select Selection.PasteSpecial Paste:=xlPasteValues
Les deux partie suivante ne fonctionne pas : le paragraphe surface Remblais me colle la valeur de la cellule K1 dans la première cellule vide de la colonne I quand au paragraphe surface remblais il ne renvoi rien
J'ai bien sur essayé avec XlUp et XlDown sans plus de résultat ! Xlup s'entête à me renvoyer le titre de mes collonnes sans tenir compte des valeurs numérique qu'il y a en dessous, et XlDown passe son chemin jusqu'au fin fond de la feuille !
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24 'Surface déblais DerniereCelluleRemplie = Columns("I:I").Find("*", , xlValues, , , xlPrevious) Range("I" & DerniereCelluleRemplie).Select Range("R458").Select Selection.End(xlUp).Select Ligne = ActiveCell.Row Range("R" & Ligne + 1).Select Selection.PasteSpecial Paste:=xlPasteValues 'Surface Remblais DerniereCelluleRemplie = Columns("P:P").Find("*", , xlValues, , , xlPrevious) Range("P" & DerniereCelluleRemplie).Select Selection.Copy Range("S458").Select Selection.End(xlUp).Select Ligne = ActiveCell.Row Range("S" & Ligne + 1).Select Selection.PasteSpecial Paste:=xlPasteValues 'Remise à zéro Range("B5:d50,J5:K50").Select Selection.ClearContents Range("B5").Select End Sub
Le pire c'est que dans le code affiché ci-dessus, si je l'exécute pas à pas, les valeurs renvoyé dans le code sont bien les bonnes et pourtant ça ne fonctionne pas !!
Si quelqu'un à une solution se serait sympat car je n'y comprend plus rien
merci pour votre aide
En Fait je viens de trouver une solution peu être pas très élégante mais qui fonctionne : juste en dessous du titre de la colonne je masque une cellule (I4) avec la formule "=recherche(9^9;I5:I50)"qui me renvoi bien cette fois-ci la dernière valeur de la colonne et j'ai modifier ma macro comme suit :
Si cela peu servir à quelqu'un mais je reste quand même sur ma faim et je voudrais bien savoir pourquoi mon code ne fonctionnait pas...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 'Surface déblais Range("I4").Select Selection.Copy Range("R458").Select Selection.End(xlUp).Select Ligne = ActiveCell.Row Range("R" & Ligne + 1).Select Selection.PasteSpecial Paste:=xlPasteValues
Partager