Copier une tableau avec des cellule vides
Résolu/Fermé
Gafsi
-
20 août 2009 à 11:41
pijaku
pijaku
- Messages postés
- 12257
- Date d'inscription
- jeudi 15 mai 2008
- Statut
- Modérateur
- Dernière intervention
- 3 septembre 2021
A voir également:
- Copier une tableau avec des cellule vides
- Copier une tableau avec des cellule vides ✓ - Forum - Programmation
- Copier valeur dans la première cellule vide dune ligne ✓ - Forum - Excel
- Excel si cellule vide alors copier cellule précédente ✓ - Forum - Excel
- Tableau croisé dynamique compter les cellules vides ✓ - Forum - Bureautique
- Formule Remplir cellule vide par la valeur de la précédente - Forum - Excel
5 réponses
pijaku
20 août 2009 à 12:29
- Messages postés
- 12257
- Date d'inscription
- jeudi 15 mai 2008
- Statut
- Modérateur
- Dernière intervention
- 3 septembre 2021
20 août 2009 à 12:29
Salut,
Cet exemple (approximatif mais efficace) copie la colonne C de la Feuil1 vers la colonne C de la Feuil2, sans les cellules vides :
Sub copicollesansvide()
Dim premlig As Integer, derlig As Integer, derniere As Integer
Dim nom As String
derniere = Range("C65536").End(xlUp).Row
Sheets("Feuil1").Range("C1").Select
nom = ActiveCell.Address
Do While nom <> "$C$" & derniere
If ActiveCell <> "" Then
premlig = ActiveCell.Row
If ActiveCell.Offset(1, 0) = "" Then
derlig = ActiveCell.Row
Range("C" & premlig, "C" & derlig).Copy Sheets("Feuil2").Range("C65536").End(xlUp).Offset(1, 0)
Selection.End(xlDown).Select
nom = ActiveCell.Address
Else
derlig = Selection.End(xlDown).Row
Range("C" & premlig, "C" & derlig).Copy Sheets("Feuil2").Range("C65536").End(xlUp).Offset(1, 0)
Selection.End(xlDown).Select
Selection.End(xlDown).Select
nom = ActiveCell.Address
If nom = "$C$65536" Then
Range("A1").Select
Exit Sub
End If
End If
Else
ActiveCell.Offset(1, 0).Select
nom = ActiveCell.Address
End If
Loop
End Sub
Cet exemple (approximatif mais efficace) copie la colonne C de la Feuil1 vers la colonne C de la Feuil2, sans les cellules vides :
Sub copicollesansvide()
Dim premlig As Integer, derlig As Integer, derniere As Integer
Dim nom As String
derniere = Range("C65536").End(xlUp).Row
Sheets("Feuil1").Range("C1").Select
nom = ActiveCell.Address
Do While nom <> "$C$" & derniere
If ActiveCell <> "" Then
premlig = ActiveCell.Row
If ActiveCell.Offset(1, 0) = "" Then
derlig = ActiveCell.Row
Range("C" & premlig, "C" & derlig).Copy Sheets("Feuil2").Range("C65536").End(xlUp).Offset(1, 0)
Selection.End(xlDown).Select
nom = ActiveCell.Address
Else
derlig = Selection.End(xlDown).Row
Range("C" & premlig, "C" & derlig).Copy Sheets("Feuil2").Range("C65536").End(xlUp).Offset(1, 0)
Selection.End(xlDown).Select
Selection.End(xlDown).Select
nom = ActiveCell.Address
If nom = "$C$65536" Then
Range("A1").Select
Exit Sub
End If
End If
Else
ActiveCell.Offset(1, 0).Select
nom = ActiveCell.Address
End If
Loop
End Sub
Merci Pijaku pour ta réponse, mais le code copie toute la colonne, par contre j'ai besoin que des cellules non vode dans cette colonne
Merci
Merci
pijaku
20 août 2009 à 21:25
- Messages postés
- 12257
- Date d'inscription
- jeudi 15 mai 2008
- Statut
- Modérateur
- Dernière intervention
- 3 septembre 2021
20 août 2009 à 21:25
Ce code ne copie que les cell non vides...
Merci pour la réponse,
J'ai vérifié et ça marche pas, y'a t-il un moyen de t'envoyer mon fichier pour le tester?
Merci d'avance
J'ai vérifié et ça marche pas, y'a t-il un moyen de t'envoyer mon fichier pour le tester?
Merci d'avance
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
GafsiTN
21 août 2009 à 18:01
- Messages postés
- 6
- Date d'inscription
- jeudi 20 août 2009
- Statut
- Membre
- Dernière intervention
- 20 avril 2010
21 août 2009 à 18:01
Voici une solution trouvé avec le soutien précieux de Franck [PijaKu]
Il s'agit de copier une colonne G:G dans la feuil1 et la coller dans la colonne A:A de la feuil3
Sub Récap()
Sheets("Feuil2").Columns("A:A").ClearContents
Sheets("Feuil1").Select
Columns("G:G").Copy Sheets("Feuil2").Columns("A:A")
Sheets("Feuil2").Select
Columns("A:A").AutoFilter Field:=1, Criteria1:="<>"
Columns("A:A").Copy Sheets("Feuil3").Columns("A:A")
Application.CutCopyMode = False
Sheets("Feuil3").Select
Columns("A:A").EntireColumn.AutoFit
Range("A1").Select
End Sub
Il s'agit de copier une colonne G:G dans la feuil1 et la coller dans la colonne A:A de la feuil3
Sub Récap()
Sheets("Feuil2").Columns("A:A").ClearContents
Sheets("Feuil1").Select
Columns("G:G").Copy Sheets("Feuil2").Columns("A:A")
Sheets("Feuil2").Select
Columns("A:A").AutoFilter Field:=1, Criteria1:="<>"
Columns("A:A").Copy Sheets("Feuil3").Columns("A:A")
Application.CutCopyMode = False
Sheets("Feuil3").Select
Columns("A:A").EntireColumn.AutoFit
Range("A1").Select
End Sub
pijaku
21 août 2009 à 20:45
- Messages postés
- 12257
- Date d'inscription
- jeudi 15 mai 2008
- Statut
- Modérateur
- Dernière intervention
- 3 septembre 2021
21 août 2009 à 20:45
Il s'agit de copier une colonne G:G dans la feuil1la coller dans la feuil2, col A, la filtrer, copier le résultat et le coller dans la colonne A:A de la feuil3 pour être plus précis.
T'as plus qu'à mettre ce sujet en "résolu"
T'as plus qu'à mettre ce sujet en "résolu"