Trouver la derniere colonne

cerede2000

XLDnaute Nouveau
Bonjour,

Encore moi. J'ai besoin de déterminer la dernière colonne utiliser, pour cela je fait:
Code:
Range("A1").End(xlToRight).Address
Ca marche assez bien, sauf si la derniere colonne est en faite A1...
La ça me renvoi un truc bizarre $XFD$1

Comment faire pour que cela me renvoi A1 :(

Merci ;)
 

Staple1600

XLDnaute Barbatruc
Re : Trouver la derniere colonne

Bonsoir


Une façon (pas la plus simple) ;)
Code:
Sub derniere_colonne_a_la_une()
MsgBox _
"La dernière colonne de la feuille est:" & Chr(13) _
& vbTab & "la colonne : " _
& Chr(13) & Space(24) & _
Replace(Mid(Columns(ActiveSheet.UsedRange.Columns.Count).Address(0, 0), _
1, 2), ":", vbNullString), vbInformation + vbYesNoCancel, _
"La solution alambiquée du jour ;-)"
End sub
 
Dernière édition:

job75

XLDnaute Barbatruc
Re : Trouver la derniere colonne

Bonjour,
Si vous pouvez avoir des valeurs après IV1, oui. Mais alors la macro ne fonctionnera plus sur les versions antérieures à 2007.
A+

Edit : la solution d'Excalibur est sans doute plus sûre, car la ligne 1 ne permet pas forcément de trouver la dernière colonne utilisée...
 
Dernière édition:

mromain

XLDnaute Barbatruc
Re : Trouver la derniere colonne

on peux aussi faire comme ça :
Code:
With ThisWorkbook.ActiveSheet
    .Cells(1, .Columns.Count).End(xlToLeft).Select
    MsgBox .Cells(1, .Columns.Count).End(xlToLeft).Address
End With
ça devrai marcher sur les versions antérieures

A+
 

job75

XLDnaute Barbatruc
Re : Trouver la derniere colonne

Bonjour mromain,
Effectivement c'est bon pour toutes les versions, mais on utilise la ligne 1, et si celle-ci ne va pas jusqu'à la dernière colonne utilisée, il y a problème. A+
 

Staple1600

XLDnaute Barbatruc
Re : Trouver la derniere colonne

Re

EDITION: en mixant ancien et nouveau
Code:
Sub DER_COLONNE_II()
Dim DC
DC = ExecuteExcel4Macro("GET.DOCUMENT(12)")
tabl = Split(Columns(DC).Address(0, 0), ":")
MsgBox tabl(0)
End Sub
Une autre façcon (old fashion ;) )

Code:
Sub DER_COLONNE()
Dim DC
DC = ExecuteExcel4Macro("GET.DOCUMENT(12)")
MsgBox DC
End Sub
Sub DER_LIGNE()
Dim DL
DL = ExecuteExcel4Macro("GET.DOCUMENT(10)")
MsgBox DL
End Sub
(test OK sous XL2000)
 
Dernière édition:

Staple1600

XLDnaute Barbatruc
Re : Trouver la derniere colonne

Re


Job75: si tu as la version française de macrofun.hlp
(je suis preneur)

(Issu de macrofun.hlp (in english :( )
Syntax

GET.DOCUMENT(type_num, name_text)
Type_num is a number that specifies what type of information you want. The following lists show the possible values of type_num and the corresponding results.
....
.....

Type_num Returns

9 Number of the first used row. If the document is empty, returns 0.
10 Number of the last used row. If the document is empty, returns 0.
11 Number of the first used column. If the document is empty, returns 0.
12 Number of the last used column. If the document is empty, returns 0.
 

job75

XLDnaute Barbatruc
Re : Trouver la derniere colonne

Autant pour moi Staple, je n'avais pas lu assez loin dans l'Aide.
Les formules s'appliquent aux graphiques quand c'est un graphique, mais pour les feuilles de calcul, c'est OK.

Je vais essayer de te faire parvenir sur ton mail mon Aide (766 Ko), fais moi parvenir ton adresse par message privé.

A+
 
Dernière édition:

Discussions similaires

Statistiques des forums

Discussions
312 502
Messages
2 089 047
Membres
104 011
dernier inscrit
dfr