0
votes

Comment coller des données jusqu'à la prochaine cellule vierge plusieurs fois dans une colonne unique?

J'essaie de prendre une seule colonne avec plusieurs blocs d'informations (c'est-à-dire 6 listes séparées par un espace de 4-5 lignes dans la même colonne) et collez un identifiant à côté de chaque entrée de la liste. Dans ce cas, l'identifiant est identique, car il s'agit d'un moyen de faire correspondre toutes les entrées dans un bloc d'informations à un seul nom.

liste avec ID
Entrez la description de l'image ici

Chaque liste comprend les liaisons qui se trouvent dans un panier dans un panier, et donc pour correspondre à chaque liaison à leur panier, je fais entrer le code du nom de le panier à côté de chaque entrée de la liste.

Le code passe à la première entrée de la liste, entrez un identifiant dans la cellule immédiatement à côté (par exemple "BCE") et élargit la même entrée vers le bas jusqu'à la dernière ligne. Cependant, j'aimerais que le code se développe uniquement jusqu'à la dernière entrée de la liste (par exemple de I5 à I3457). Le prochain morceau de code (dans ce cas "ECB étendue") irait de I13504 à I17046.

Le problème se pose lorsque la sélection SELECTION.AutOfill Destination: = plage (sélection, sélection.end ( XLDOWN)) code est exécuté dans la première cellule, il ne s'arrête pas dans la dernière entrée de la liste, mais elle tombe en panne jusqu'à la toute dernière ligne de la feuille entière (par exemple, I140454): < p> problème
Entrez la description de l'image ici xxx

Est-ce que quelqu'un connaît un moyen d'élargir "BCE" de I5 à I3457 et de le faire arrêter à I3457?


2 commentaires

C'est la meilleure pratique de Évitez d'utiliser . Sélectionner / .Activate , fyi.


Voici une explication d'un SUB qui duplique l'effet "Copie auto" par défaut de double-cliquant sur le bas droit d'une cellule: SOCAL.MSDN .microsoft.com / Forums / FR-US / ...


3 Réponses :


1
votes

Je pense que vous pouvez utiliser un décalage pour éviter votre problème et utiliser Xldown sur les données existantes. Par exemple, si vous n'avez que des colonnes A et B et que vous souhaitez remplir automatiquement la BCE et le FNB sur C comme ceci:

 Entrez la description de l'image ici p>

Vous pouvez utiliser ce code Et vous éviterez d'utiliser ce que Bruquayne vous a dit de vous soucier des meilleures pratiques: P>

Sub jason()

Range(Range("B5").Offset(0, 1), Range("B5").End(xlDown).Offset(0, 1)) = "ECB"
Range(Range("B22").Offset(0, 1), Range("B22").End(xlDown).Offset(0, 1)) = "ETF"

End Sub


2 commentaires

Merci beaucoup Benderlo! Travaillé parfaitement :)


Le plaisir, n'oubliez pas de fermer le sujet si ça va avec la tique :)



1
votes

Si vous ne savez pas où les gammes commencent, vous pourriez essayer une approche comme celle-ci. Je ne comprends pas vraiment comment vos codes correspondent au nombre de blocs de sorte que le bit pourrait avoir besoin d'ajuster. xxx

 Entrez la description de l'image ici < / p>


0 commentaires

0
votes

Voir le lien ci-dessous pour plusieurs idées de la façon de gérer ce genre de chose.

https: // www. Ablebits.com/Office-Addins-Blog/2014/05/02/frill-blanks-excel/

En outre, envisagez d'allumer l'enregistreur macro avant de cliquer sur les étapes pour obtenir le code pour faire ce genre de chose de plus et encore.


0 commentaires