XL 2019 vba supprimer une ligne avec copie coller des donnees

frederio

XLDnaute Impliqué
Bonsoir a tous

Tu vous connais comment faire ?

Si tu veux être d’accord avec moi ??? vous m’aidez a expliqué comme Excel Merci


Supprimer des lignes

=B3:G242

COPIER /COLLER DES DONNEES

1) copie =I3:N308

2) coller =B2469



 

Pièces jointes

  • comment faire supprimer de lignes .xlsm
    113.3 KB · Affichages: 13

Phil69970

XLDnaute Barbatruc
Bonjour @frederio

Je te propose ce code qui fait tout ce que tu as demandé en même temps ;)
Supprimer des lignes

=B3:G242

COPIER /COLLER DES DONNEES

1) copie =I3:N308

2) coller =B2469

avec le bouton copier/coller

1649753420611.png


VB:
Private Sub CommandButton3_Click()
Application.ScreenUpdating = False
If Range("Tableau1").ListObject.DataBodyRange Is Nothing Then Exit Sub    'Tableau vide
If Range("tableau1").ListObject.ListColumns(1).Range.SpecialCells(xlCellTypeVisible).Count > 1 Then
    ListObjects(1).DataBodyRange.Copy ListObjects(2).ListRows.Add.Range
    ListObjects(1).DataBodyRange.Delete
End If

For i = 243 To 1 Step -1
    ListObjects(2).ListRows(i).Delete
Next i
End Sub

@Phil69970
 

Phil69970

XLDnaute Barbatruc
Re

Si tu ne veux pas supprimer I3:N308

Private Sub CommandButton3_Click()
Application.ScreenUpdating = False
If Range("Tableau1").ListObject.DataBodyRange Is Nothing Then Exit Sub 'Tableau vide
If Range("tableau1").ListObject.ListColumns(1).Range.SpecialCells(xlCellTypeVisible).Count > 1 Then
ListObjects(1).DataBodyRange.Copy ListObjects(2).ListRows.Add.Range
'ListObjects(1).DataBodyRange.Delete ' <==Ligne à desactiver
End If

For i = 243 To 1 Step -1
ListObjects(2).ListRows(i).Delete
Next i
End Sub

Si tu avais essayé le code pas à pas avec la touche F8 tu aurais vu et compris tout seul la ligne à désactiver ou à supprimer

@Phil69970
 

frederio

XLDnaute Impliqué
il ne marche pas aussi c est faute

("Tableau1") changer Tbl_Saison_2




2022-04-14_16-55-33.png



VB:
Private Sub CommandButton3_Click()
Application.ScreenUpdating = False
If Range("Tbl_Saison_2").ListObject.DataBodyRange Is Nothing Then Exit Sub    'Tableau vide
If Range("Tbl_Saison_2").ListObject.ListColumns(1).Range.SpecialCells(xlCellTypeVisible).Count > 1 Then
    ListObjects(1).DataBodyRange.Copy ListObjects(2).ListRows.Add.Range
    ListObjects(1).DataBodyRange.Delete
End If

For i = 243 To 1 Step -1
    ListObjects(2).ListRows(i).Delete
Next i
End Sub
 

Pièces jointes

  • Belgique (1).xlsm
    767.4 KB · Affichages: 2

frederio

XLDnaute Impliqué
c est faute !


VB:
Private Sub CommandButton3_Click()
Application.ScreenUpdating = False
If Range("Tbl_Saison_2").ListObject.DataBodyRange Is Nothing Then Exit Sub    'Tableau vide
If Range("Tbl_Saison_2").ListObject.ListColumns(1).Range.SpecialCells(xlCellTypeVisible).Count > 1 Then
    ListObjects(1).DataBodyRange.Copy ListObjects(2).ListRows.Add.Range
    ListObjects(1).DataBodyRange.Delete
End If

For i = 309 To 1 Step -1
    ListObjects(2).ListRows(i).Delete
Next i
End Sub
 

Pièces jointes

  • un code vba.xlsm
    819.6 KB · Affichages: 1

Eric C

XLDnaute Barbatruc
Bonsoir le forum
Bonsoir frederio, les membres de ce forum sont TOUS des bénévoles. Ils répondent (ou pas) aux posts quand ils le veulent et n'ont, en aucun cas à se justifier s'ils ne veulent donner suite aux questions (toi même ne réponds jamais alors que tu "manipules" le VBA et les formules ???).
Par ailleurs, ils prennent le temps qu'ils veulent car certains ont un travail (donc quand ils rentrent c'est pour "respirer" et passer un moment en famille, autour de la table puis devant la télévision, le forum restant un passe temps, un loisir). D'autres sont retraités mais ont aussi d'autres occupations ou loisirs (jardinage qui revient avec le beau temps - sorties - visite aux enfants et petits enfants - pêche - bricolage ... j'en passe...).
Ce n'est pas parce qu'une question est posée qu'il faut y répondre. ....
Par ailleurs, ce n'est pas une critique mais une remarque. Il me semble que tu as un handicap et j'en suis désolé mais à la lecture de tes posts, tu ne fais pas trop d'effort dans tes phrases (sauf dans l'énoncé des demandes???) alors qu'à la lecture des commentaires dans ton fichier, ou sur la page d'accueil, le langage est très clair, bien écrit en bon français et compréhensible ??? (même s'il l'on trouve quelques petites fautes d'orthographe... mais bon...) -
Dernière remarque, lorsqu'une réponse t'es donnée en dernier lieu, elle manque souvent d'un amical "Merci" de ta part.
C'était mon petit coup de gueule du jour.... pas méchant du tout...
Bonne soirée à toutes & à tous
@+ Eric c
 
Dernière édition:

Eric C

XLDnaute Barbatruc
Re le fil

Je pense que ma réponse n'étant pas à la hauteur de ta demande, tu n'as pas lu l'intégralité de mon post car d'une part; je me cite " ce n'est pas une critique mais une remarque" et d'autre part, "je sais (pour l'avoir lu) que tu as un handicap", et j'en suis désolé.

Ce que je te reproche est de ne pas faire d'effort dans tes phrases sauf dans l'énoncé de tes demandes alors que dans le code du fichier mis en ligne, tes annotations (commentaires) ainsi que les commandes sur la page d'accueil, le langage est très clair, bien écrit en bon français et compréhensible ???

Par ailleurs, comme tu reviens à la charge, il semblerait au vu de l'environnement de ton fichier et des détails mis en œuvre, que lorsque ton fichier sera finalisé, il sera mis en ligne sur le net (gracieusement ou .… ) ?? (cela n'engage que moi – Lorsque je m'assiste d'un fichier, je ne m'encombre pas de détails inutiles...Btn : Plein écran ou minimisé – Graphiques ,,,(si j'utilise mon fichier, j'en connais son fonctionnement (à moins d'être atteint de la maladie d'alzheimer...)).

Et n'oublie pas, lors de tes prochaines interventions (en ta qualité de quémandeur), de remercier le ou les intervenants.
Bonne fin de soirée à toutes & à tous
@+ Eric c
 

Statistiques des forums

Discussions
312 215
Messages
2 086 333
Membres
103 188
dernier inscrit
evebar