Sélectionner une plage de cellule variable entre deux colonnes

Bonjour,

Je souhaiterais en VBA sélectionner une plage de cellule comprise entre la colonne "A" et la colonne "AU" et qui commence par la dernière ligne non vide de la colonne "A" et finisse au niveau de la dernière ligne non vide de la colonne "AU". Les colonnes "A" et "AU" ne ont pas pour l'heure des valeurs contiguë (mais cela peut ce faire facilement, ces des colonnes non imprimable qui sert juste à définir la plage que je veux sélectionner.

Le but est de copier la sélection et de la coller en A dans la ligne en dessous la cellule non vide en "AU"

J'y arrive bien quand je connais les les cellules de début et de fin

Range("A4:Au39").Select

Selection.Copy

ActiveWindow.SmallScroll Down:=24

Range("A40").Select

Selection.Insert Shift:=xlDown

Mais ça marche plus des que j'essaie de dire que c'est la dernière cellule non vide de A ou de AU

Merci pour votre aide

Bonjour,

essaie ceci

Range("A" & range("A" & rows.count).end(xlup).row & ":Au" & range("AU" & rows.count).end(xlup).row).Select

Salut Sylvain,

Salut Steelson ,

sélection et copie sur un double-clic sur la feuille...

Range("A" & iRowAU).Resize(iRowAU - iRowA, 47).Value = Range("A" & iRowA).Resize(iRowAU - iRowA, 47).Value

Reste à savoir :

  • le mode de déclenchement de cette procédure de sélection/copie ;
  • es-tu certain que [AU] est toujours plus "bas" que [A], sinon... cata !

A+

63sylvain.xlsm (13.77 Ko)

Merci Steelson et Curulis57

J'ai pris la propo de steelson qui me parle plus, et qui fonctionne bien.

Malheureusement je bloque à nouveau sur la suite. Aller coller la sélection dans la colonne "A" une ligne en dessous de la ligne non vide de la colonne "AU". je l'ai écrit comme suit:

Range("A" & Range("A" & Rows.Count).End(xlUp).Row & ":Au" & Range("AU" & Rows.Count).End(xlUp).Row).Select Selection.Copy ActiveWindow.SmallScroll Down:=24 Range("AU" & Rows.Count).End(xlUp).Select ActiveCell.Offset(1, -47).Select Selection.Insert Shift:=xlDown ActiveWindow.SmallScroll Down:=15

Mais là j'ai maintenant une erreur d'exécution '1004' sur la ligne ActiveCell.offset, que je ne comprend pas.

A+

Aller coller la sélection dans la colonne "A" une ligne en dessous de la ligne non vide de la colonne "AU".

Cette cellule s'écrit alors ...

Range("A" & Range("AU" & Rows.Count).End(xlUp).Row +1).Select

C'est assez difficile de travailler sur "papier libre" donc si tu as d'autres questions, poste un petit fichier représentatif.

Salut Curulis57

Parfait merci ça marche

Rechercher des sujets similaires à "selectionner plage variable entre deux colonnes"