Excel VBA, Comment sélectionner les lignes basés sur les données dans une colonne?
Sub SelectAllReleventText()
Do While Range(“A1”).Offset(1, 6) <> Empty
Rows(ActiveCell.Row).Select
ActiveCell.Offset(1, 0).Select
Loop
End Sub
Voici mon script, j'ai été dit, il ne fait pas ce qu'il est censé, à laquelle je m'attendais, puisque c'était ma première tentative. Je suis venue avec une variable non défini erreur. J'ai pensé que j'ai défini la variable, mais je suppose que ce n'était pas assez précis pour Excel VBA.
C'est ce que je tente de faire.
- Dans le Classeur 1, B6 il y a un nom alphanumérique, je veux que la ligne sélectionnée.
- Aller à la ligne suivante, si il y a du texte, choisissez la ligne.
- Continuer jusqu'texte est plus répandue.
- Copie des lignes sélectionnées.
- Coller dans un autre classeur (Workbook2), dans l'onglet 1, en commençant sur la ligne 2, ligne 1 comporte des en-têtes.
Merci à l'avance. Juste un heads-up, je suis en utilisant les Options Explicite dans mon VBA car on m'a dit qu'elle était la "bonne façon de faire les chose"...
essayez ceci:
Do While Range(“A1”).Offset(1, 6) <> ""
OriginalL'auteur Matt Ridge | 2012-03-20
Vous devez vous connecter pour publier un commentaire.
Oui à l'aide de
Option Explicit
est une bonne habitude. À l'aide de.Select
n'est cependant pas 🙂 il réduit la vitesse du code. Également justifier pleinement les noms de feuilles d'autre que le code sera toujours courir pour leActivesheet
qui pourrait ne pas être ce que vous vouliez.Est-ce que vous essayez?
NOTE
Si vous avez des données à partir de la Ligne 2 jusqu'à la Ligne 10 et ligne 11 est vide et ensuite, vous avez à nouveau des données à partir de la Ligne 12, alors le code ci-dessus seulement copier des données à partir de la Ligne 2 jusqu'à la Ligne 10
Si vous souhaitez copier toutes les lignes qui ont des données, puis utiliser ce code.
Espère que c'est ce que vous vouliez?
Sid
Gr8 🙂 Que voulez-vous dire par "proche"? La partie n'est pas de travail (s'il ne fonctionne pas) Avez-vous apporter les modifications nécessaires au code ci-dessus pour répondre à vos besoins? Si oui, alors je serais ravi de voir le code que tu as essayé 🙂
Je viens de poster la pièce jointe comme un lien... il va vous expliquer ce que je voulais à l'origine, et je serai bientôt de retour, j'ai eu une urgence en voyage, j'ai à prendre.
Désolé pour le laisser comme ça. J'ai eu un client qui avait son ordinateur portable abandonné par son fils, a eu pour récupérer tous les médias et les données sur le disque. Ce n'était pas que des disques SSD. En tout cas, au lieu de dire ce que je veux, j'ai téléchargé la dernière pièce jointe avec tous les documents, et l'explication de ce que je dois faire. Si vous pouvez aider, il serait grandement apprécié. dl.dropbox.com/u/3327208/zips/Late%20Jobs.zip
OriginalL'auteur Siddharth Rout
La façon la plus simple de le faire est d'utiliser le
End
méthode, qui vous donne la cellule que vous l'atteindre en appuyant sur la touche de fin et puis une direction lorsque vous êtes sur une cellule (dans ce cas, B6). Ce ne sera pas vous donner ce que vous attendez si B6 ou B7 est vide, si.Si vous ne pouvez pas utiliser
End
, alors que vous auriez à utiliser une boucle.OriginalL'auteur Tmdean