Bonjour,
Je cherche à transcrire un "index/equiv" en vba (valeur recherchee du equiv issue d'un combobox, tableau de recherche dans une feuille et resultat final dans les cellule) =INDEX(pnTranslate;EQUIV("MONTEXTE";pnTranslate_Ref;0);cnLanguage)
cette fonction marche très bien sur mes cellules excel par contre il fallait l'automatiser, j'exécute ce code mais il n'affiche rien, pourriez vous le vérifier SVP
j'avais Erreur d'exécution '91' et en changant Application.Matchpar Application.WorksheetFunction.Match j'ai Erreur d'exécution '7' mémoire insuffisante j'ai tenté de diminuer le nombres des cellules Range("A1:N21") par Range("A1:G15") mais ca marche toujours pas
veuillez m'aider SVP
Merci par avance
Je cherche à transcrire un "index/equiv" en vba (valeur recherchee du equiv issue d'un combobox, tableau de recherche dans une feuille et resultat final dans les cellule) =INDEX(pnTranslate;EQUIV("MONTEXTE";pnTranslate_Ref;0);cnLanguage)
cette fonction marche très bien sur mes cellules excel par contre il fallait l'automatiser, j'exécute ce code mais il n'affiche rien, pourriez vous le vérifier SVP
Code:
Option Explicit
Sub TraduireTexte()
Dim pnTranslate, pnTranslate_Ref, cnLanguage, Var As String
Dim Wb As Workbook 'Définit une variable qui va représenter un classeur
Dim Ws As Worksheet 'Définit une variable qui va représenter une feuille de calcul
Dim C As Range 'Définit une variable qui va représenter une cellule
pnTranslate = Sheets("traduction").Range("A2:E16")
pnTranslate_Ref = Sheets("traduction").Range("A2:A16")
cnLanguage = Sheets("Langue").Cells(2, 3)
Var = Application.WorksheetFunction.Match(Cells.Value, pnTranslate_Ref, 0)
For Each C In Worksheets("Sommaire").Range("A1:N21")
If C.Value <> "" Then
C.Value = Application.WorksheetFunction.Index(pnTranslate, Var, cnLanguage)
End If
Next
End Sub
j'avais Erreur d'exécution '91' et en changant Application.Matchpar Application.WorksheetFunction.Match j'ai Erreur d'exécution '7' mémoire insuffisante j'ai tenté de diminuer le nombres des cellules Range("A1:N21") par Range("A1:G15") mais ca marche toujours pas
veuillez m'aider SVP
Merci par avance