Microsoft Excel est particulièrement friands de plages contiguës . Quand une plage est interrompue par des cellules vides , Excel ajoute une couche de difficulté de vos tâches de tableur . Parfois, la solution est de remplir les blancs , copier les lignes qui contiennent des données et coller les valeurs dans les lignes vides en dessous. Si vous travaillez avec une grande feuille de calcul , vous n'avez probablement pas envie de le faire à la main. Au lieu de cela , utilisez un Visual Basic pour Applications ( VBA) pour trouver les lignes disponibles et coller les données automatiquement. Instructions
1
Open " Microsoft Excel ", version 2002 ou version ultérieure .
2
Créer une feuille de calcul pour tester votre macro. Inclure les lignes avec des données et des lignes qui sont vides . Entrez les données suivantes :
cellule B1 : test1
cellule C1: test1
Cellule A4 : test2
cellule B4 : test2
cellule C4: test2
cellule D4 : test2
cellule A5: test3
cellule B5 : test3
cellules C5: test3
cellule A9: test4
3
Appuyez sur " Alt + F11 " pour ouvrir l'éditeur Visual Basic
4
insérer un module vide pour tenir votre code VBA. . Sélectionnez " Insérer ", puis " Module " dans le menu .
5
Démarrer une nouvelle routine appelée " PasteAvail . " Tapez la commande suivante dans le module de code :
Sous PasteAvail ()
Appuyez sur " Entrée". Excel va ajouter une instruction "End Sub" .
6
déclarer les variables que vous allez utiliser . Tapez la commande suivante entre le "Sub" et les déclarations " End Sub" :
MaxRows As Long, LastRow As Long , i As Long
maxCols As Integer, FirstRow As Integer
7
assigner des variables pour contenir le nombre total de lignes et de colonnes sur la feuille de calcul . La valeur réelle de ces variables dépend de la version d'Excel que vous utilisez. Tapez la commande suivante :
MaxRows = Rows.Count
maxCols = Columns.Count
8
assigner des variables pour contenir les numéros de ligne pour les première et dernière lignes qui contiennent données . Cela évite une longue boucle à travers chaque ligne de la feuille de calcul. Tapez la commande suivante : . .
FirstRow = 1
LastRow = Cells ( MaxRows , 1) End ( xlUp ) Row
9
ajouter du code pour regarder chaque consécutive, du premier au dernier , décider si la ligne est vide, et copier ou coller au besoin. Tapez la commande suivante : .
For i = FirstRow Pour LastRow
lignes ( i) Sélectionner
Si WorksheetFunction.CountBlank ( lignes ( i)) = maxCols Puis
ActiveSheet.Paste
Else
Selection.Copy
End If Next i
10
Laisser l' instruction " End Sub " en place.
11
Exécuter la macro. Cliquez sur "Exécuter ", puis " Exécuter Sub /UserForm " dans le menu .
12
Appuyez sur " Alt + F11 " pour revenir à la feuille de calcul Excel et afficher les résultats .