Erreur dans code macro

Bonjour,

Je suis novice dans les écritures de macros excel... Si quelqu'un pouvait m'aider à trouver la (les) erreurs dans ma codification?

Voici le résultat recherché:

Tableur avec colonnes de données, 4 colonnes nommées: Codes (5 chiffres)//Nom//ID//Code

Je voudrais qu'en tapant le code à 5 chiffres en C1, une fenêtre s'ouvre avec le nom, l'ID et le code.

Voici ce que j'ai écrit:

Sub Macro3()

'

' Declaration des variables

Dim client As String, id As String, code As String, numero As Integer

'Valeur des Variables

numero = ActiveCell.FormulaR1C1 = "=VLOOKUP(R[-1]C, R[6]C:R[998]C, 1, FALSE)"

client = Cells(numero, 4)

id = Cells(numero, 7)

code = Cells(numero, 8)

'Boîte de dialogue

MsgBox client & ": " & id & ", " & code & " "

'

End Sub

Si quelqu'un peut m'apporter ses lumières...

Merci et bonne soirée

Bonjour,

Il conviendrait de voir le fichier pour savoir ce qu'il en est.

7classeur1.xlsm (26.33 Ko)

Tu remplaces ta macroo par celle-ci :

Sub Macro1()
    Dim msg$, c As Range
    With ActiveSheet
        Set c = .Range("C9:C35").Find(.Range("C1"))
        If Not c Is Nothing Then
            msg = c.Offset(, 1) & " : " & c.Offset(, 4) & ", " & c.Offset(, 5)
        Else
            msg = "Aucun client à ce numéro !"
        End If
    End With
    MsgBox msg
End Sub

Merci pour ta réponse rapide, ce que j'ai du mal à comprendre c'est la multitude de façons d'écrire les macros.

C'est en en faisant beaucoup que tu as appris à "optimiser" l'écriture ou on te l'a appris?

Bonne journée

Salut !

Il est très rare qu'il n'y ait pas plusieurs solutions pour résoudre un problème (j'entends approches différentes...), et dans le cadre d'une même approche, il y a généralement plusieurs façons de l'écrire...

Les façons les plus efficaces sont celles qui limitent au maximum les interactions avec Excel durant l'exécution du code.

Cela s'apprend à l'usage... A mon époque internet était encore loin d'être omniprésent, et l'apprentissage se faisait avec les moyens du bord localement : Aide, Livres, échanges avec les collègues...

Et à l'usage : pour améliorer un programme (soit pour y introduire des éléments auxquels on n'avait pas pensé au départ...), on finit généralement par bloquer à force d'ajouter des "rustines", à un moment on reprend donc la conception et on se rend compte qu'on peut programmer plus efficacement dès lors qu'on a intégré au départ tous les éléments dont on aura besoin et la façon dont ils doivent s'articuler entre eux...

Je dirais donc que deux éléments interviennent pour progresser : une meilleure connaissance de VBA et de la syntaxe (qui s'acquiert naturellement au fil du temps par la pratique) et le travail sur un projet avant de commencer à coder...

Cordialement.

Rechercher des sujets similaires à "erreur code macro"