VBA affichage d'une cellule de la dernière ligne d'un caractère

Résolu/Fermé
wawayou_nation Messages postés 3 Date d'inscription jeudi 18 juillet 2019 Statut Membre Dernière intervention 25 décembre 2020 - Modifié le 24 déc. 2020 à 11:05
wawayou_nation Messages postés 3 Date d'inscription jeudi 18 juillet 2019 Statut Membre Dernière intervention 25 décembre 2020 - 25 déc. 2020 à 14:33
Bonjour à tous.

Je suis débutant en VBA. SVP, j'ai vraiment besoin d'un coup de main pour la transcription de la formule suivante en code VBA :
{=DECALER(B1;MAX(LIGNE(A2:A20)*(A2:A20=E3))-1;;;)}

Merci d'avance
A voir également:

2 réponses

Frenchie83 Messages postés 2240 Date d'inscription lundi 6 mai 2013 Statut Membre Dernière intervention 11 août 2023 337
25 déc. 2020 à 07:11
Bonjour,

L'intitulé de votre demande ne veut absolument rien dire.

Pour votre formule, si vous la voulez traduite en VBA, il suffit d'utiliser l'enregistreur de macro, ce qui donne avec la formule en E1 par exemple:
    Range("E1").FormulaArray = "=OFFSET(R1C2,MAX(ROW(R2C1:R20C1)*(R2C1:R20C1=R3C5))-1,,,)"
.

Maintenant si vous voulez traduire cela en VBA pur, il faudrait qu'on puisse comprendre ce que vous cherchez avec un fichier à l'appui et des exemples et commentaires sur ce que vous attendez.

Cdlt
0
wawayou_nation Messages postés 3 Date d'inscription jeudi 18 juillet 2019 Statut Membre Dernière intervention 25 décembre 2020
25 déc. 2020 à 14:27
Bonjour

En fait, je voulais avoir le résultat de cette formule dans un textbox de userform qui comporte un combobox, lequel est relié à un cellule de ma feuille. Ainsi dès que je fais une sélection à partir du combobox, cela agit automatiquement sur ma feuille. Je récupère alors dans le même temps le résultat dans le textbox dédié dans mon userform. Ci joint un aperçu.

Cordialement
0
wawayou_nation Messages postés 3 Date d'inscription jeudi 18 juillet 2019 Statut Membre Dernière intervention 25 décembre 2020
25 déc. 2020 à 14:33
Bonjour,

J'ai fini par trouver une solution qui fonctionne très bien. J'ai lié le combobox à la cellule E3 à l'aide du code suivant


Private Sub ComboBox1_Change()
Range("E3").Value = ComboBox1.Value
End Sub

Ainsi lorsque je changerai de producteur dans le userform, cela changera automatiquement dans la feuille.

Ensuite je récupère dans le même temps la dernière production mensuelle dans le TextBox1 à l'aide du code suivant que j'ai placé dans la feuille

Private Sub Worksheet_Change(ByVal Target As Range)
userform1.TextBox1.Text = sheets("Feuil1").range("F3")
End Sub

Mon problème est donc résolu. Merci pour votre aide

Cordialement
0