Vba : code pour supprimer une ligne
Résolu/Fermé
A voir également:
- Vba : code pour supprimer une ligne
- Mkdir vba ✓ - Forum VB / VBA
- Excel compter cellule couleur sans vba - Guide
- Vba range avec variable ✓ - Forum VB / VBA
- L'indice n'appartient pas à la sélection vba ✓ - Forum Programmation
- Autofill vba ✓ - Forum Excel
7 réponses
pijaku
Messages postés
12263
Date d'inscription
jeudi 15 mai 2008
Statut
Modérateur
Dernière intervention
4 janvier 2024
2 752
15 févr. 2010 à 11:43
15 févr. 2010 à 11:43
Salut,
Comment choisis tu la ligne à supprimer?
S'il s'agit d'une la ligne dont l'utilisateur aura au préalable sélectionné une cellule :
Comment choisis tu la ligne à supprimer?
S'il s'agit d'une la ligne dont l'utilisateur aura au préalable sélectionné une cellule :
ActiveCell.EntireRow.Copy Sheets("Feuil2").Range("A65536").End(xlUp).Offset(1, 0) ' Sheets("Feuil2").Range("A65536").End(xlUp).Offset(1, 0) est la feuille de destination (feuil2) première ligne vide ActiveCell.EntireRow.Delete
En fait , je connais le numéro de la ligne ("d") trouvé grâce à une procédure de recherche à l'ouverture du userform. Mais je peux aussi la sélectionner.
pijaku
Messages postés
12263
Date d'inscription
jeudi 15 mai 2008
Statut
Modérateur
Dernière intervention
4 janvier 2024
2 752
15 févr. 2010 à 12:06
15 févr. 2010 à 12:06
Si tu connais le numéro de la ligne :
Rows(d).EntireRow.Copy Sheets("Feuil2").Range("A65536").End(xlUp).Offset(1, 0) Rows(d).EntireRow.Delete
Merci Pijaku, ta procédure fonctionnant bien ,j'ai essayé de l'utilisé pour copier une ligne dans une autre fichier (Feuille nommée "IAR" dans le Fichier "z:\mes documents\Dailly Test\Dailly I\IAR.xls") et là ca ne fonctionne pas. Sais tu où est l'erreur dans cette procédure :
Private Sub CommandButton2_Click()
Set Plage1 = [_filterdatabase].Offset(1).Resize(, 1)
Set Plage1 = Plage1.Resize(Plage1.Count - 1).SpecialCells(xlCellTypeVisible)
Range("I" & Plage1.Row) = "IAR"
Rows(Plage1.Row).EntireRow.Copy Sheets("Archives régularisations").Range("A65536").End(xlUp).Offset(1, 0)
Workbooks.Open "z:\mes documents\Dailly Test\Dailly I\IAR.xls"
Rows(Plage1.Row).EntireRow.Copy Workbooks("IAR.xls").Worksheets("IAR").Range("A65536").End(xlUp).Offset(1, 0)
Workbooks("New ClasseurTEST.xls").Worksheets("Archive Cessions").Rows(Plage1.Row).EntireRow.Delete
Workbooks("IAR.xls").Save
Workbooks("IAR.xls").Close
?
Merci beaucoup.
Private Sub CommandButton2_Click()
Set Plage1 = [_filterdatabase].Offset(1).Resize(, 1)
Set Plage1 = Plage1.Resize(Plage1.Count - 1).SpecialCells(xlCellTypeVisible)
Range("I" & Plage1.Row) = "IAR"
Rows(Plage1.Row).EntireRow.Copy Sheets("Archives régularisations").Range("A65536").End(xlUp).Offset(1, 0)
Workbooks.Open "z:\mes documents\Dailly Test\Dailly I\IAR.xls"
Rows(Plage1.Row).EntireRow.Copy Workbooks("IAR.xls").Worksheets("IAR").Range("A65536").End(xlUp).Offset(1, 0)
Workbooks("New ClasseurTEST.xls").Worksheets("Archive Cessions").Rows(Plage1.Row).EntireRow.Delete
Workbooks("IAR.xls").Save
Workbooks("IAR.xls").Close
?
Merci beaucoup.
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
pijaku
Messages postés
12263
Date d'inscription
jeudi 15 mai 2008
Statut
Modérateur
Dernière intervention
4 janvier 2024
2 752
15 févr. 2010 à 16:05
15 févr. 2010 à 16:05
ou est l'erreur?
Plage1.Row?
Qu'elle ligne est surlignée en jaune par le débogage?
Plage1.Row?
Qu'elle ligne est surlignée en jaune par le débogage?
pijaku
Messages postés
12263
Date d'inscription
jeudi 15 mai 2008
Statut
Modérateur
Dernière intervention
4 janvier 2024
2 752
15 févr. 2010 à 16:22
15 févr. 2010 à 16:22
Dans ce cas, déclenche ta macro "pas à pas" et vérifies ta feuille ecxel au fur et à mesure, tu verras ce qui déconnes et pourras le modifier.
C'est bon, je viens de trouver. Il fallait en fait précisé que la plage concernait le premier fichier :
Workbooks("New ClasseurTEST.xls").Sheets("Archive Cessions").Rows(Plage1.Row).EntireRow.Copy Workbooks("IAR.xls").Sheets("IAR").Range("A65536").End(xlUp).Offset(1, 0)
En tout cas merci pour tout !
Workbooks("New ClasseurTEST.xls").Sheets("Archive Cessions").Rows(Plage1.Row).EntireRow.Copy Workbooks("IAR.xls").Sheets("IAR").Range("A65536").End(xlUp).Offset(1, 0)
En tout cas merci pour tout !