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 .
|