Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Dernière ligne renseignée

4 réponses
Avatar
Calou
Bonjour,

J'ai un tableau que je nourris régulièrement et je voulais savoir s'il était
possible par une macro de positionner la cellule active à la première ligne
vierge (Colonne A sans date d'opération).

Un grand merci par avance pour votre aide.

Bonne soirée.

4 réponses

Avatar
LSteph
Bonsoir,

[a65536].end(xlup)(2).activate


--
lSteph

Calou a écrit :
Bonjour,

J'ai un tableau que je nourris régulièrement et je voulais savoir s'il était
possible par une macro de positionner la cellule active à la première ligne
vierge (Colonne A sans date d'opération).

Un grand merci par avance pour votre aide.

Bonne soirée.





Avatar
Calou
Bonjour,
Mille merci. Je ne pensais pas à une réponse aussi courte.
Bonne Journée.


Bonsoir,

[a65536].end(xlup)(2).activate


--
lSteph

Calou a écrit :
Bonjour,

J'ai un tableau que je nourris régulièrement et je voulais savoir s'il
était possible par une macro de positionner la cellule active à la
première ligne vierge (Colonne A sans date d'opération).

Un grand merci par avance pour votre aide.

Bonne soirée.








Avatar
Papyjac
Bonjour Calou,

La réponse de LSteph est très correcte : j'ai utilisé l'enregistreur de
macros qui répond à la question :

Sub Macro1()
'
' Macro1 Macro
'
Range("A1").Select
Selection.End(xlDown).Select
Range("A17").Select 'Cette instruction est à revoir car
elle n'est pas généralisée
End Sub

Tu vois que je suis parti par "en haut", alors que LSteph est parti par "en
bas" :
Il a raison, car ne connaissant pas la structure de ton onglet, il n'a pas
pris le risque de tomber sur une cellule vide

Bref, LSteph t'a donné la solution, et moi je te donne la méthode

Bon courage


--
P a p y j a c
"LSteph" a écrit dans le message de
news:%
Bonsoir,

[a65536].end(xlup)(2).activate


--
lSteph

Calou a écrit :
Bonjour,

J'ai un tableau que je nourris régulièrement et je voulais savoir s'il
était possible par une macro de positionner la cellule active à la
première ligne vierge (Colonne A sans date d'opération).

Un grand merci par avance pour votre aide.

Bonne soirée.






Avatar
LSteph
Bonjour Papy,

... si je préconisais de partir de [a65536]
et de remonter vers le haut (sauf si 65536 est elle-même remplie)
et ce n'est valable que pour les versions dont la feuille comporte
effectivement 65536 lignes , on peut aussi utiliser:


Sub aaaziv()
With ActiveSheet.[a:a]
If .Cells(.Cells.Count).Value <> "" Then
.Cells(.Cells.Count).Activate
MsgBox "attention dernière cellule remplie"
Else
.Cells(.Cells.Count).End(xlUp)(2).Activate
End If
End With
End Sub



et si je peux apporter un rien de +
Il est rarement utile de sélectionner
pour imaginer exemple à partir de ce que tu as écrit

Range("A1").Select
Selection.End(xlDown).Select

se résume ainsi

[a1].End(xlDown).select

> Range("A17").Select 'Cette instruction est à revoir
> car elle n'est pas généralisée

dans ce cas pour décaler on utilise .offset(ligne,colonne)
ainsi le range
[a1].End(xlDown).offset(1,0)
est situé juste en dessous de
[a1].End(xlDown

la cellule d'au dessus sera
[a1].End(xlDown).offset(-1,0)

remarque
[a1].End(xlDown).offset(1,0)
s'écrit aussi
[a1].End(xlDown)(2)


@+
--
lSteph

Papyjac a écrit :
Bonjour Calou,

La réponse de LSteph est très correcte : j'ai utilisé l'enregistreur de
macros qui répond à la question :

Sub Macro1()
'
' Macro1 Macro
'
Range("A1").Select
Selection.End(xlDown).Select
Range("A17").Select 'Cette instruction est à revoir
car elle n'est pas généralisée
End Sub

Tu vois que je suis parti par "en haut", alors que LSteph est parti par
"en bas" :
Il a raison, car ne connaissant pas la structure de ton onglet, il n'a
pas pris le risque de tomber sur une cellule vide

Bref, LSteph t'a donné la solution, et moi je te donne la méthode

Bon courage