• Initiateur de la discussion Initiateur de la discussion Tibo
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

T

Tibo

Guest
Salut a tous!

Est que vous auriez la solution pour selectionner la premiere lligne vide d'une liste avec une macro???

merci d'avance !
Longue vie au forum!
 
Bonjour,

Si par exemple ton tableau se situe dans la plage A1:F250.
Le programme doit trouver la première ligne vide correspondant, dans l'exemple précédent, à la ligne 251.
Pour cela, il faut prendre en référence une colonne (n'importe laquelle)
Par exemple la colonne 1 (cad la colonne A).

DerLigne=Sheets("MaFeuille").Cells(65536,1).End(xlUp).Row+1

DerLigne renvoi le numéro de ligne 251

@+

Ronan
 
Bonjour Tout le monde

La solution de Ronan en fait donne la "première-dernière" ligne vide. Si il y a des lignes vide entre 2 elles ne seront pas pris en compte.

Pour cela il faut

DerLigne=Sheets("MaFeuille").Range("A1")End(xldown).Row+1

Bon courage

Pascal
 
Tout d'abord merci pour ta reponse Ronan.
En fait ce que je voudrais c'est pouvoir coller un truc selectionner auparavant au bout d'une liste, voila avec quoi j'essaie de me depatouiller:

Dim i As Integer
Dim j As Integer
i = 0
j = 1
Sheets("arb1").Select
For i = 4 To 1000
If Range("A" & i + 3) = "B.I." Then
Range("A" & i + 3, "L" & i + 3).Select
Selection.Copy
Sheets("F2").Cells(A65536, A1).End(xlUp).Row+1.Select
ActiveSheet.Paste
j = j + 1
Application.CutCopyMode = False
Sheets("arb1").Select
Next i
End If
End Sub

Le truc c'est que ca :

Sheets("F2").Cells(65536,1).End(xlUp).Row+1.Select

VBA il en veut pas!
bon moi je ne comprends rien a VBA mais ptetre que tu peux m'aider ?

En tout cas merci !
 
Bonjour Tibo, Ronan, Pascal76, le Forum

Tibo, le code ci dessous fonctionne, j'ai un peu clarifié ta macro

Cordialement, A+

Dim i As Integer
i = 0
For i = 7 To 1000
If Sheets("arb1").Range("A" & i).FormulaR1C1 = "B.I." Then
Sheets("arb1").Range("A" & i, "L" & i).Copy Destination:=Sheets("F2").[A65536].End(xlUp).Offset(1, 0)
Application.CutCopyMode = False
End If
Next i
 
Voilà ton code modifié mais non optimisé

Dim i As Integer
Dim j As Integer
dim DerLigne as integer
j = 1
Sheets("arb1").Select
For i = 4 To 1000
If Range("A" & i + 3) = "B.I." Then
Range("A" & i + 3, "L" & i + 3).Select
Selection.Copy
Derligne=Sheets("F2").Range("A65536").End(xlUp).Row+1
Sheets("F2").Range("A" & DerLigne).select
ActiveSheet.Paste
j = j + 1
Application.CutCopyMode = False
Sheets("arb1").Select
Next i
End If
End Sub

Bon courage

Pascal
 
Merci Yeahou et Pascal

Je ne voulais pas vous deranger une nouvelle fois mais:
Le debugger me pointe la ligne :

Sheets("F2").Range("A" & DerLigne).Select

Bon si ca vous saoule vous n'etes pas obliger de repondre, je comprendrai.
 
En fait en mettant :

"Sheet ("F2").Select" avant le "Derligne=..." ca fonctionne parfaitement!
Par contre Yeahoo j'ai pas reussi a faire fonctionner le tien, mais je te rassure ca doit venir de moi...

donc merci!
 
Bonjour tibo, le forum

fonctionne pas ?
tu utilise i ou j aprés ?
auquel cas, rétablis les i et j précédemment définis

Dim i As Integer
Dim j As Integer
j = 1
For i = 4 To 1000
If Sheets("arb1").Range("A" & i + 3).FormulaR1C1 = "B.I." Then
Sheets("arb1").Range("A" & (i + 3) & ":" & "L" & (i + 3)).Copy Destination:=Sheets("F2").[A65536].End(xlUp).Offset(1, 0)
j = j + 1
End If
Next i

si tu utilise une version antérieure à 2002, cette macro devrait être compatible

Dim i As Integer
For i = 7 To 1000
If Sheets("arb1").Range("A" & i).FormulaR1C1 = "B.I." Then
Sheets("arb1").Range("A" & i & ":" & "L" & i).Copy Destination:=Sheets("F2").[A65536].End(xlUp).Offset(1, 0)
End If
Next i

ou peut être est ce l'absence de sélection qui te trouble car ce code modifie les feuilles sans avoir besoin de les activer ou de les sélectionner. tu peux le lancer même si tu es sur une troisiéme feuille et F2 sera mise à jour sans changer de feuille active.

Cordialement, A+
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

Réponses
2
Affichages
336
Réponses
22
Affichages
396
Retour