OVH Cloud OVH Cloud

VBA - trouver la dernière colonne

8 réponses
Avatar
twinley
Bonjour à tous,

Nième question sur le sujet, après m'être usé les yeux dans Google MPFE.

Pour trouver la dernière colonne pleine, sans s'occuper des colonnes
cachées, j'ai commencé par
dercol = .UsedRange.Column + .UsedRange.Columns.Count
bien sur c'était pas bon.
Je trouve une autre syntaxe :
.Cells.Find("*", .[A1], xlFormulas, , xlByColumns, xlPrevious).Column

Mais quand je la mets dans le WBK, elle trouve sur la première feuille
mais dans la boucle sur toutes les feuilles, la var dercol n'est
actualisée dès la deuxième feuille.

With Sheets(onglet)
derlgn = .Range("A150").End(xlUp).Row
dercol = .Cells.Find("*", .[A1], xlFormulas, , xlByColumns,
xlPrevious).Column
End With


J'ai essayé ça : dercol = .Cells.Find("*", , LookIn:=xlFormulas, _
searchorder:=xlByColumns, SearchDirection:=xlPrevious).Column
mais c'est pas mieux, avec ou sans [A1].
Quel est ce mystère ?

Si une bonne âme pouvait m'éviter le nervousse braikdonne...

Merci d'avance

à+twinley

8 réponses

Avatar
twinley
C'est bon j'ai trouvé...

Cells.Find("*", [A1], , , xlByColumns, xlPrevious).Column

C'est le point devant cells qu'il aimait pas.

J'avais le même pb sur derlgn, mais je ne le voyais pas car au premier
passage du premier onglet, le nb de ligne est trouvé et après il ne
varie pas, alors que le nb de col change par la suite.

encore grâce aux post d'AV que je remercie au passage.

à+twinley


twinley wrote:
Bonjour à tous,

Nième question sur le sujet, après m'être usé les yeux dans Google MPFE.

Pour trouver la dernière colonne pleine, sans s'occuper des colonnes
cachées, j'ai commencé par
dercol = .UsedRange.Column + .UsedRange.Columns.Count
bien sur c'était pas bon.
Je trouve une autre syntaxe :
.Cells.Find("*", .[A1], xlFormulas, , xlByColumns, xlPrevious).Column

Mais quand je la mets dans le WBK, elle trouve sur la première feuille
mais dans la boucle sur toutes les feuilles, la var dercol n'est
actualisée dès la deuxième feuille.

With Sheets(onglet)
derlgn = .Range("A150").End(xlUp).Row
dercol = .Cells.Find("*", .[A1], xlFormulas, , xlByColumns,
xlPrevious).Column
End With


J'ai essayé ça : dercol = .Cells.Find("*", , LookIn:=xlFormulas, _
searchorder:=xlByColumns, SearchDirection:=xlPrevious).Column
mais c'est pas mieux, avec ou sans [A1].
Quel est ce mystère ?

Si une bonne âme pouvait m'éviter le nervousse braikdonne...

Merci d'avance

à+twinley


Avatar
jps
arrête avec tes monologues, twinley....continue ainsi et je sens que tu vas
être (gros)jean comme devant....réponds plutôt à titine...
jps

"twinley" a écrit dans le message de
news:

C'est bon j'ai trouvé...

Cells.Find("*", [A1], , , xlByColumns, xlPrevious).Column

C'est le point devant cells qu'il aimait pas.

J'avais le même pb sur derlgn, mais je ne le voyais pas car au premier
passage du premier onglet, le nb de ligne est trouvé et après il ne
varie pas, alors que le nb de col change par la suite.

encore grâce aux post d'AV que je remercie au passage.

à+twinley


twinley wrote:
Bonjour à tous,

Nième question sur le sujet, après m'être usé les yeux dans Google MPFE.

Pour trouver la dernière colonne pleine, sans s'occuper des colonnes
cachées, j'ai commencé par
dercol = .UsedRange.Column + .UsedRange.Columns.Count
bien sur c'était pas bon.
Je trouve une autre syntaxe :
.Cells.Find("*", .[A1], xlFormulas, , xlByColumns, xlPrevious).Column

Mais quand je la mets dans le WBK, elle trouve sur la première feuille
mais dans la boucle sur toutes les feuilles, la var dercol n'est
actualisée dès la deuxième feuille.

With Sheets(onglet)
derlgn = .Range("A150").End(xlUp).Row
dercol = .Cells.Find("*", .[A1], xlFormulas, , xlByColumns,
xlPrevious).Column
End With


J'ai essayé ça : dercol = .Cells.Find("*", , LookIn:=xlFormulas, _
searchorder:=xlByColumns, SearchDirection:=xlPrevious).Column
mais c'est pas mieux, avec ou sans [A1].
Quel est ce mystère ?

Si une bonne âme pouvait m'éviter le nervousse braikdonne...

Merci d'avance

à+twinley




Avatar
twinley
Salut jps,

Je cherchais, non pas après titine, mais après toi pour le message de
bienvenue. Tu as un touché incomparable, elles le disent toutes.
Si je pouvais lui répondre, tu te doutes bien que ce serait avec
plaisir, selon l'expression consacrée. Mais je comprend même pas la
question.
L'âge amène des comportements étrange. Je me pose une question et j'y
répond. Le comble c'est quand je ne me pose pas de question et je me
répond ?!
Enfin on se comprend jps... hein ?
J'ai perdu du temps à cause d'un point et je me suis remémoré un exemple
d'AV alors que j'étais dans un lieu d'aisance.
C'est en quelque sorte le petit coin qui m'a apporté la solution au
petit point.
Je me sens flatté de la comparaison avec le jeune Jean. Mais un rien
inquiet.

à+twinley



jps wrote:
arrête avec tes monologues, twinley....continue ainsi et je sens que tu vas
être (gros)jean comme devant....réponds plutôt à titine...
jps

"twinley" a écrit dans le message de
news:

C'est bon j'ai trouvé...

Cells.Find("*", [A1], , , xlByColumns, xlPrevious).Column

C'est le point devant cells qu'il aimait pas.

J'avais le même pb sur derlgn, mais je ne le voyais pas car au premier
passage du premier onglet, le nb de ligne est trouvé et après il ne
varie pas, alors que le nb de col change par la suite.

encore grâce aux post d'AV que je remercie au passage.

à+twinley


twinley wrote:

Bonjour à tous,

Nième question sur le sujet, après m'être usé les yeux dans Google MPFE.

Pour trouver la dernière colonne pleine, sans s'occuper des colonnes
cachées, j'ai commencé par
dercol = .UsedRange.Column + .UsedRange.Columns.Count
bien sur c'était pas bon.
Je trouve une autre syntaxe :
.Cells.Find("*", .[A1], xlFormulas, , xlByColumns, xlPrevious).Column

Mais quand je la mets dans le WBK, elle trouve sur la première feuille
mais dans la boucle sur toutes les feuilles, la var dercol n'est
actualisée dès la deuxième feuille.

With Sheets(onglet)
derlgn = .Range("A150").End(xlUp).Row
dercol = .Cells.Find("*", .[A1], xlFormulas, , xlByColumns,
xlPrevious).Column
End With


J'ai essayé ça : dercol = .Cells.Find("*", , LookIn:=xlFormulas, _
searchorder:=xlByColumns, SearchDirection:=xlPrevious).Column
mais c'est pas mieux, avec ou sans [A1].
Quel est ce mystère ?

Si une bonne âme pouvait m'éviter le nervousse braikdonne...

Merci d'avance

à+twinley








Avatar
jps
:-))))))))))
clémentine va bien se demander où elle a mis ses souliers...le sapin est
plutôt vert, surtout dans son langage...
jps

"twinley" a écrit dans le message de
news:%
Salut jps,

Je cherchais, non pas après titine, mais après toi pour le message de
bienvenue. Tu as un touché incomparable, elles le disent toutes.
Si je pouvais lui répondre, tu te doutes bien que ce serait avec
plaisir, selon l'expression consacrée. Mais je comprend même pas la
question.
L'âge amène des comportements étrange. Je me pose une question et j'y
répond. Le comble c'est quand je ne me pose pas de question et je me
répond ?!
Enfin on se comprend jps... hein ?
J'ai perdu du temps à cause d'un point et je me suis remémoré un exemple
d'AV alors que j'étais dans un lieu d'aisance.
C'est en quelque sorte le petit coin qui m'a apporté la solution au
petit point.
Je me sens flatté de la comparaison avec le jeune Jean. Mais un rien
inquiet.

à+twinley



jps wrote:
arrête avec tes monologues, twinley....continue ainsi et je sens que tu
vas


être (gros)jean comme devant....réponds plutôt à titine...
jps

"twinley" a écrit dans le message de
news:

C'est bon j'ai trouvé...

Cells.Find("*", [A1], , , xlByColumns, xlPrevious).Column

C'est le point devant cells qu'il aimait pas.

J'avais le même pb sur derlgn, mais je ne le voyais pas car au premier
passage du premier onglet, le nb de ligne est trouvé et après il ne
varie pas, alors que le nb de col change par la suite.

encore grâce aux post d'AV que je remercie au passage.

à+twinley


twinley wrote:

Bonjour à tous,

Nième question sur le sujet, après m'être usé les yeux dans Google
MPFE.





Pour trouver la dernière colonne pleine, sans s'occuper des colonnes
cachées, j'ai commencé par
dercol = .UsedRange.Column + .UsedRange.Columns.Count
bien sur c'était pas bon.
Je trouve une autre syntaxe :
.Cells.Find("*", .[A1], xlFormulas, , xlByColumns, xlPrevious).Column

Mais quand je la mets dans le WBK, elle trouve sur la première feuille
mais dans la boucle sur toutes les feuilles, la var dercol n'est
actualisée dès la deuxième feuille.

With Sheets(onglet)
derlgn = .Range("A150").End(xlUp).Row
dercol = .Cells.Find("*", .[A1], xlFormulas, , xlByColumns,
xlPrevious).Column
End With


J'ai essayé ça : dercol = .Cells.Find("*", , LookIn:=xlFormulas, _
searchorder:=xlByColumns, SearchDirection:=xlPrevious).Column
mais c'est pas mieux, avec ou sans [A1].
Quel est ce mystère ?

Si une bonne âme pouvait m'éviter le nervousse braikdonne...

Merci d'avance

à+twinley










Avatar
michdenis
Bonjour Twinley,


Tu peux continuer tes recherches car la ligne de code retenue par AV ne répond pas à tous les cas de figures ! Je
suppose que lors de ces échanges, tu étais occupé à autre chose !!!


Salutations!



"twinley" a écrit dans le message de news: %
Salut jps,

Je cherchais, non pas après titine, mais après toi pour le message de
bienvenue. Tu as un touché incomparable, elles le disent toutes.
Si je pouvais lui répondre, tu te doutes bien que ce serait avec
plaisir, selon l'expression consacrée. Mais je comprend même pas la
question.
L'âge amène des comportements étrange. Je me pose une question et j'y
répond. Le comble c'est quand je ne me pose pas de question et je me
répond ?!
Enfin on se comprend jps... hein ?
J'ai perdu du temps à cause d'un point et je me suis remémoré un exemple
d'AV alors que j'étais dans un lieu d'aisance.
C'est en quelque sorte le petit coin qui m'a apporté la solution au
petit point.
Je me sens flatté de la comparaison avec le jeune Jean. Mais un rien
inquiet.

à+twinley



jps wrote:
arrête avec tes monologues, twinley....continue ainsi et je sens que tu vas
être (gros)jean comme devant....réponds plutôt à titine...
jps

"twinley" a écrit dans le message de
news:

C'est bon j'ai trouvé...

Cells.Find("*", [A1], , , xlByColumns, xlPrevious).Column

C'est le point devant cells qu'il aimait pas.

J'avais le même pb sur derlgn, mais je ne le voyais pas car au premier
passage du premier onglet, le nb de ligne est trouvé et après il ne
varie pas, alors que le nb de col change par la suite.

encore grâce aux post d'AV que je remercie au passage.

à+twinley


twinley wrote:

Bonjour à tous,

Nième question sur le sujet, après m'être usé les yeux dans Google MPFE.

Pour trouver la dernière colonne pleine, sans s'occuper des colonnes
cachées, j'ai commencé par
dercol = .UsedRange.Column + .UsedRange.Columns.Count
bien sur c'était pas bon.
Je trouve une autre syntaxe :
.Cells.Find("*", .[A1], xlFormulas, , xlByColumns, xlPrevious).Column

Mais quand je la mets dans le WBK, elle trouve sur la première feuille
mais dans la boucle sur toutes les feuilles, la var dercol n'est
actualisée dès la deuxième feuille.

With Sheets(onglet)
derlgn = .Range("A150").End(xlUp).Row
dercol = .Cells.Find("*", .[A1], xlFormulas, , xlByColumns,
xlPrevious).Column
End With


J'ai essayé ça : dercol = .Cells.Find("*", , LookIn:=xlFormulas, _
searchorder:=xlByColumns, SearchDirection:=xlPrevious).Column
mais c'est pas mieux, avec ou sans [A1].
Quel est ce mystère ?

Si une bonne âme pouvait m'éviter le nervousse braikdonne...

Merci d'avance

à+twinley








Avatar
michdenis
Ne pas tenir compte de mon dernier message ....!


Salutations!



"twinley" a écrit dans le message de news: %
Salut jps,

Je cherchais, non pas après titine, mais après toi pour le message de
bienvenue. Tu as un touché incomparable, elles le disent toutes.
Si je pouvais lui répondre, tu te doutes bien que ce serait avec
plaisir, selon l'expression consacrée. Mais je comprend même pas la
question.
L'âge amène des comportements étrange. Je me pose une question et j'y
répond. Le comble c'est quand je ne me pose pas de question et je me
répond ?!
Enfin on se comprend jps... hein ?
J'ai perdu du temps à cause d'un point et je me suis remémoré un exemple
d'AV alors que j'étais dans un lieu d'aisance.
C'est en quelque sorte le petit coin qui m'a apporté la solution au
petit point.
Je me sens flatté de la comparaison avec le jeune Jean. Mais un rien
inquiet.

à+twinley



jps wrote:
arrête avec tes monologues, twinley....continue ainsi et je sens que tu vas
être (gros)jean comme devant....réponds plutôt à titine...
jps

"twinley" a écrit dans le message de
news:

C'est bon j'ai trouvé...

Cells.Find("*", [A1], , , xlByColumns, xlPrevious).Column

C'est le point devant cells qu'il aimait pas.

J'avais le même pb sur derlgn, mais je ne le voyais pas car au premier
passage du premier onglet, le nb de ligne est trouvé et après il ne
varie pas, alors que le nb de col change par la suite.

encore grâce aux post d'AV que je remercie au passage.

à+twinley


twinley wrote:

Bonjour à tous,

Nième question sur le sujet, après m'être usé les yeux dans Google MPFE.

Pour trouver la dernière colonne pleine, sans s'occuper des colonnes
cachées, j'ai commencé par
dercol = .UsedRange.Column + .UsedRange.Columns.Count
bien sur c'était pas bon.
Je trouve une autre syntaxe :
.Cells.Find("*", .[A1], xlFormulas, , xlByColumns, xlPrevious).Column

Mais quand je la mets dans le WBK, elle trouve sur la première feuille
mais dans la boucle sur toutes les feuilles, la var dercol n'est
actualisée dès la deuxième feuille.

With Sheets(onglet)
derlgn = .Range("A150").End(xlUp).Row
dercol = .Cells.Find("*", .[A1], xlFormulas, , xlByColumns,
xlPrevious).Column
End With


J'ai essayé ça : dercol = .Cells.Find("*", , LookIn:=xlFormulas, _
searchorder:=xlByColumns, SearchDirection:=xlPrevious).Column
mais c'est pas mieux, avec ou sans [A1].
Quel est ce mystère ?

Si une bonne âme pouvait m'éviter le nervousse braikdonne...

Merci d'avance

à+twinley








Avatar
twinley
Bonjour michdenis

Pour tout te dire j'ai commencé avec cette macro que tu devrais reconnaître.

'--------------------------
Sub DerniereColonne()
Dim B As Integer
With Worksheets("Feuil1")
B = .Cells.Find("*", , LookIn:=xlFormulas, _
searchorder:=xlByColumns, SearchDirection:=xlPrevious).Column
End With
Msgbox B
End Sub
'--------------------------

Je cherchais la dernière colonne dans une boucle sur 12 feuilles.

La syntaxe suivante trouve la dernière col de la première feuille mais
pas les autres.
With Worksheets("Feuil1")
B = .Cells.Find("*", , LookIn:=xlFormulas, _
searchorder:=xlByColumns, SearchDirection:=xlPrevious).Column
End With

Puis j'ai vu une syntaxe de AV sans les lookIn, search.. , etc mais ou
il n'y avait pas de point.

En enlevant simplement le point devant cells, la dernière colonne est
trouvée pour chaque feuille. Je n'ai rien changé d'autre dans ma sub.
J'en déduis que le .cells le perturbait.

Voilà un petit mystère. Car si tu arrives à faire tourner ta sub avec un
nb de col différents dans chaque feuille, je devrais aussi.

à+twinley

michdenis wrote:
Ne pas tenir compte de mon dernier message ....!


Salutations!



"twinley" a écrit dans le message de news: %
Salut jps,

Je cherchais, non pas après titine, mais après toi pour le message de
bienvenue. Tu as un touché incomparable, elles le disent toutes.
Si je pouvais lui répondre, tu te doutes bien que ce serait avec
plaisir, selon l'expression consacrée. Mais je comprend même pas la
question.
L'âge amène des comportements étrange. Je me pose une question et j'y
répond. Le comble c'est quand je ne me pose pas de question et je me
répond ?!
Enfin on se comprend jps... hein ?
J'ai perdu du temps à cause d'un point et je me suis remémoré un exemple
d'AV alors que j'étais dans un lieu d'aisance.
C'est en quelque sorte le petit coin qui m'a apporté la solution au
petit point.
Je me sens flatté de la comparaison avec le jeune Jean. Mais un rien
inquiet.

à+twinley



jps wrote:

arrête avec tes monologues, twinley....continue ainsi et je sens que tu vas
être (gros)jean comme devant....réponds plutôt à titine...
jps

"twinley" a écrit dans le message de
news:


C'est bon j'ai trouvé...

Cells.Find("*", [A1], , , xlByColumns, xlPrevious).Column

C'est le point devant cells qu'il aimait pas.

J'avais le même pb sur derlgn, mais je ne le voyais pas car au premier
passage du premier onglet, le nb de ligne est trouvé et après il ne
varie pas, alors que le nb de col change par la suite.

encore grâce aux post d'AV que je remercie au passage.

à+twinley


twinley wrote:


Bonjour à tous,

Nième question sur le sujet, après m'être usé les yeux dans Google MPFE.

Pour trouver la dernière colonne pleine, sans s'occuper des colonnes
cachées, j'ai commencé par
dercol = .UsedRange.Column + .UsedRange.Columns.Count
bien sur c'était pas bon.
Je trouve une autre syntaxe :
.Cells.Find("*", .[A1], xlFormulas, , xlByColumns, xlPrevious).Column

Mais quand je la mets dans le WBK, elle trouve sur la première feuille
mais dans la boucle sur toutes les feuilles, la var dercol n'est
actualisée dès la deuxième feuille.

With Sheets(onglet)
derlgn = .Range("A150").End(xlUp).Row
dercol = .Cells.Find("*", .[A1], xlFormulas, , xlByColumns,
xlPrevious).Column
End With


J'ai essayé ça : dercol = .Cells.Find("*", , LookIn:=xlFormulas, _
searchorder:=xlByColumns, SearchDirection:=xlPrevious).Column
mais c'est pas mieux, avec ou sans [A1].
Quel est ce mystère ?

Si une bonne âme pouvait m'éviter le nervousse braikdonne...

Merci d'avance

à+twinley












Avatar
twinley
:-D

encore une histoire sapin et de religieux où la décoration ne sert à rien...

à+twinley

jps wrote:
:-))))))))))
clémentine va bien se demander où elle a mis ses souliers...le sapin est
plutôt vert, surtout dans son langage...
jps

"twinley" a écrit dans le message de
news:%

Salut jps,

Je cherchais, non pas après titine, mais après toi pour le message de
bienvenue. Tu as un touché incomparable, elles le disent toutes.
Si je pouvais lui répondre, tu te doutes bien que ce serait avec
plaisir, selon l'expression consacrée. Mais je comprend même pas la
question.
L'âge amène des comportements étrange. Je me pose une question et j'y
répond. Le comble c'est quand je ne me pose pas de question et je me
répond ?!
Enfin on se comprend jps... hein ?
J'ai perdu du temps à cause d'un point et je me suis remémoré un exemple
d'AV alors que j'étais dans un lieu d'aisance.
C'est en quelque sorte le petit coin qui m'a apporté la solution au
petit point.
Je me sens flatté de la comparaison avec le jeune Jean. Mais un rien
inquiet.

à+twinley



jps wrote:

arrête avec tes monologues, twinley....continue ainsi et je sens que tu



vas

être (gros)jean comme devant....réponds plutôt à titine...
jps

"twinley" a écrit dans le message de
news:


C'est bon j'ai trouvé...

Cells.Find("*", [A1], , , xlByColumns, xlPrevious).Column

C'est le point devant cells qu'il aimait pas.

J'avais le même pb sur derlgn, mais je ne le voyais pas car au premier
passage du premier onglet, le nb de ligne est trouvé et après il ne
varie pas, alors que le nb de col change par la suite.

encore grâce aux post d'AV que je remercie au passage.

à+twinley


twinley wrote:


Bonjour à tous,

Nième question sur le sujet, après m'être usé les yeux dans Google





MPFE.

Pour trouver la dernière colonne pleine, sans s'occuper des colonnes
cachées, j'ai commencé par
dercol = .UsedRange.Column + .UsedRange.Columns.Count
bien sur c'était pas bon.
Je trouve une autre syntaxe :
.Cells.Find("*", .[A1], xlFormulas, , xlByColumns, xlPrevious).Column

Mais quand je la mets dans le WBK, elle trouve sur la première feuille
mais dans la boucle sur toutes les feuilles, la var dercol n'est
actualisée dès la deuxième feuille.

With Sheets(onglet)
derlgn = .Range("A150").End(xlUp).Row
dercol = .Cells.Find("*", .[A1], xlFormulas, , xlByColumns,
xlPrevious).Column
End With


J'ai essayé ça : dercol = .Cells.Find("*", , LookIn:=xlFormulas, _
searchorder:=xlByColumns, SearchDirection:=xlPrevious).Column
mais c'est pas mieux, avec ou sans [A1].
Quel est ce mystère ?

Si une bonne âme pouvait m'éviter le nervousse braikdonne...

Merci d'avance

à+twinley