En VBA, Comment retourner la lettre de la colonne via recherche
Fermé
Yanndc
Messages postés
6
Date d'inscription
vendredi 15 février 2013
Statut
Membre
Dernière intervention
14 septembre 2016
-
Modifié par Yanndc le 15/02/2013 à 14:37
eriiic Messages postés 24603 Date d'inscription mardi 11 septembre 2007 Statut Contributeur Dernière intervention 15 décembre 2024 - 15 févr. 2013 à 23:39
eriiic Messages postés 24603 Date d'inscription mardi 11 septembre 2007 Statut Contributeur Dernière intervention 15 décembre 2024 - 15 févr. 2013 à 23:39
A voir également:
- En VBA, Comment retourner la lettre de la colonne via recherche
- Retourner ecran windows - Guide
- Déplacer une colonne excel - Guide
- Formule somme excel colonne - Guide
- Telecharger macro convertir chiffre en lettre excel - Télécharger - Tableur
- Trier colonne excel - Guide
6 réponses
ccm81
Messages postés
10907
Date d'inscription
lundi 18 octobre 2010
Statut
Membre
Dernière intervention
24 janvier 2025
2 429
15 févr. 2013 à 18:00
15 févr. 2013 à 18:00
bonjour
essaies ceci
bonne suite
essaies ceci
dim a as string, co as string a = Range(ta_cellule).Address co = Split(a, "$")(3)
bonne suite
Yanndc
Messages postés
6
Date d'inscription
vendredi 15 février 2013
Statut
Membre
Dernière intervention
14 septembre 2016
15 févr. 2013 à 19:25
15 févr. 2013 à 19:25
Merci pour ton aide.
Si je comprends ton bien ton code, il manquerait de modifier "ta_cellule" pour etre capable de chercher dans quel cellule se retrouve ma date. Je sais pas faire ca non plus.
Si je comprends bien, ta formule extrait la lettre de la colonne pour une cellule donné.
Si je comprends ton bien ton code, il manquerait de modifier "ta_cellule" pour etre capable de chercher dans quel cellule se retrouve ma date. Je sais pas faire ca non plus.
Si je comprends bien, ta formule extrait la lettre de la colonne pour une cellule donné.
ccm81
Messages postés
10907
Date d'inscription
lundi 18 octobre 2010
Statut
Membre
Dernière intervention
24 janvier 2025
2 429
Modifié par ccm81 le 15/02/2013 à 19:59
Modifié par ccm81 le 15/02/2013 à 19:59
exact ou presque, j'ai fait une erreur dans l'utilisation de la fonction split
a = Range(ta_cellule).Address
récupère l'adresse sous la forme $B$13
co = Split(a, "$")(1)
renvoie "B"
dans quelle cellule se trouve ta date?
a = Range(ta_cellule).Address
récupère l'adresse sous la forme $B$13
co = Split(a, "$")(1)
renvoie "B"
dans quelle cellule se trouve ta date?
Yanndc
Messages postés
6
Date d'inscription
vendredi 15 février 2013
Statut
Membre
Dernière intervention
14 septembre 2016
15 févr. 2013 à 20:44
15 févr. 2013 à 20:44
On ne sait pas. Il faut chercher a travers la rangée 3 pour la date "2013-02-04". La colonne que je cherche est celle qui précède cette dernière.
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
gbinforme
Messages postés
14946
Date d'inscription
lundi 18 octobre 2004
Statut
Contributeur
Dernière intervention
24 juin 2020
4 714
15 févr. 2013 à 22:54
15 févr. 2013 à 22:54
Bonjour,
Pour trouver la colonne qui précède la valeur "2013-02-04" en ligne 3, tu peux utiliser :
si ta date est en colonne J "da" contiendra I
Pour trouver la colonne qui précède la valeur "2013-02-04" en ligne 3, tu peux utiliser :
Dim da As String, dch As Double dch = DateValue("4/2/2013") da = Chr(Application.WorksheetFunction.Match(dch, Rows(3), 0) + 63)
si ta date est en colonne J "da" contiendra I
eriiic
Messages postés
24603
Date d'inscription
mardi 11 septembre 2007
Statut
Contributeur
Dernière intervention
15 décembre 2024
7 250
Modifié par eriiic le 15/02/2013 à 23:50
Modifié par eriiic le 15/02/2013 à 23:50
Bonsoir à tous,
Si ta colonne peut être > "Z" utilise plutôt :
Mais tu n'es pas obligé de passer par les lettres. Ex :
eric
Jamais tu ne répondras à un mp non sollicité...
Bon, ça c'est fait.
Si ta colonne peut être > "Z" utilise plutôt :
Dim col As String, date1 As Date, c As Range date1 = DateValue("4/2/2013") Set c = Rows(3).Find(date1, LookIn:=xlValues) If c Is Nothing Then col = "non trouvé" Else col = Split(c.Offset(, -1).Address, "$")(1)
Mais tu n'es pas obligé de passer par les lettres. Ex :
date1 = DateValue("4/2/2013") Set c = Rows(3).Find(date1, LookIn:=xlValues) If Not c Is Nothing Then Columns(5).Resize(, c.Column - 5).Select
eric
Jamais tu ne répondras à un mp non sollicité...
Bon, ça c'est fait.