FormuleVBA Enregistré => En VBA Propre

Bonjour,

je souhaiterai récrire une vba ci dessous pour ressortir le chemin du fichier comme variable, attention le fichier dois rester fermer.

Range("q2") = "=INDEX('\\Reseau.net\entreprise\BUME\Prod\Decolletage_I\LOGISTIQUE\[Liste_Met.xlsm]CromQ'!C1:C29,MATCH(RC[-14],'\\Swatchgroup.net\ETA\BUME\Prod\Decolletage_I\LOGISTIQUE\[Liste_Met.xlsm]CromQ'!C4,0),1)"

si je peux utiliser Application.WorksheetFunction ou .Formula cela me semble plus facile pour introduire des variable mais je n'arrive pas l'écrire.

merci d'avance de votre aide

si jai bien compris Application.WorksheetFunction ne fonctionne pas avec un fichier fermer j'ai donc essayer avec formula et un simple rechercheV mais il y a quelque chose que je fait faux

cheminlisteMach = "\\serveur.net\entreprise\BUME\Prod\Decolletage_I\MANAGEMENT\01_AVOR\"
NomListeMach = "01_LISTE_MACHINES_DECOLLETAGE.xlsm"
ListMachFormule = "'" & cheminlisteMach & "[" & NomListeMach & "]" & "PROD'!"

Worksheets("CDE").Range("C011").Formula = "=VLookup(C6,& ListMachFormule & $B$3:$X$210,15,0)"

Bonjour,

Voici le code à utiliser selon ce que vous avez indiqué

  Dim CheminListeMach As String, NomListeMach As String, ListMachFormule As String

  CheminListeMach = "\\serveur.net\entreprise\BUME\Prod\Decolletage_I\MANAGEMENT\01_AVOR\"
  NomListeMach = "01_LISTE_MACHINES_DECOLLETAGE.xlsm"
  ListMachFormule = "'" & CheminListeMach & "[" & NomListeMach & "]" & "PROD'!"
  Worksheets("CDE").Range("C11").FormulaLocal = "=RECHERCHEV(C6," & ListMachFormule & "$B$3:$X$210,15,Faux)"

A+

bonjour,

Merci pour la réponse, malheureusement cela ne fonctionne pas, si j'ai bien compris vous avez changer Formula par FormulaLocal cela est t'il necessaire ?? le problème avec FormulaLocal s'est qu'il travail que en dans la langue Local cela ne m'arrange pas car j'ai plusieurs collègue avec des langues differentes. La deuxième chose que j'ai repérer s'est les "" en plus avant et après la variable Juste ??

Malheureusement ses changements ne fonctionne pas il dois manquer quelque chose. a savoir que le code fonctionne ci dessous mais je sais pas comment je peux le transcrire pour y mettre une variable du chemin

Worksheets("CDE").Range("C010").Formula = "=VLookup(C6,'\\serveur.net\entreprise\BUME\Prod\Decolletage_I\MANAGEMENT\01_AVOR\[01_LISTE_MACHINES_DECOLLETAGE.xlsm]PROD'!$B$3:$X$210,15,0)"

merci pour votre soutien.

ok j'avance les deux méthode ci dessous fonctionne

Worksheets("CDE").Range("C012").Formula = "= VLOOKUP(C6,'\\serveur.net\entreprise\BUME\Prod\Decolletage_I\MANAGEMENT\01_AVOR\[" & NomListeMach & "]PROD'!$B$3:$X$210,15,0)"

Worksheets("CDE").Range("C012").Formula = "= VLOOKUP(C6,'" & CheminListeMach & "[" & NomListeMach & "]PROD'!$B$3:$X$210,15,0)"

Mais pas celle-ci

Worksheets("CDE").Range("C012").Formula = "= VLOOKUP(C6," & ListMachFormule & "PROD '!$B$3:$X$210,15,0)"

il dois y avoir un problème de syntaxe dans ma variable vous voyer mon erreur ??ListMachFormule = "'" & CheminListeMach & "[" & NomListeMach & "]"

Re,

A ma connaissance, "FormulaLocal" fonctionne peut importe la langue, Excel converti... du moins il me semble

Sinon, dans la formule qui ne fonctionne pas, l'espace après PROD est-il volontaire ?

 "PROD '

Sinon le problème est là, je pense.

@+

S’est forcément ça merci vous avez l’œil je teste demain.

Étape 2

Est t’il possible de renvoyer directement la valeur du résultat de la formule dans la cellule co12 ou je dois faire un copier coller en valeur??

Merci encore

Re,

Pour cela, vous pouvez le faire en 2 étapes

Worksheets("CDE").Range("C012").Formula = "= VLOOKUP(C6," & ListMachFormule & "PROD'!$B$3:$X$210,15,0)"
Worksheets("CDE").Range("C012").Value = Worksheets("CDE").Range("C012").Value

@+

alors c'étais bien l'espace merci, j'ai refait le code au propre ca fonctionne nickel.

Sub RechercheV()

Dim Repertoire As String 'RepertoireDim NomFichier  As String 'Nom du fichierDim FeuilleR As String 'Feuille de rechercheDim PlageR As String ' Plage de rechercheDim RepFichier As String ' chemin complet Repertoire + Nom du fichier + Nom Feuille recherche + Plage rechercheDim ColResult As Byte ' Numero de la collone de resulta

Repertoire = "\\Serveur.net\entreprise\BUME\Prod\Decolletage_I\MANAGEMENT\01_AVOR\"NomFichier = "01_LISTE_MACHINES_DECOLLETAGE.xlsm"FeuilleR = "PROD"PlageR = "$B$3:$X$210"RepFichier = "'" & Repertoire & "[" & NomFichier & "]" & FeuilleR & "'!" & PlageR & ""

'***Rercherche Matière Liste MachineWorksheets("CDE").Range("C10").Formula = "= VLOOKUP(C6," & RepFichier & ",15,0)"Worksheets("CDE").Range("C10") = Worksheets("CDE").Range("C10").Value

End Sub

Etape 3

Pouvons nous faire une recherche avec 2 critère avec une recherche dans deux colonne distingue ?? comme dans une formule Matriciel ??

ok j'ai fait des essai avec Index + Equiv car avec rechercheV je ne vois pas comment y mettre deux critère de recherche. voici mon essai comme dab il ne fonctionne pas.

Dim Repertoire As String 'Repertoire
Dim NomFichier  As String 'Nom du fichier
Dim FeuilleR As String 'Feuille de recherche
Dim PlageR As String ' Plage de recherche
Dim CollR As String 'Colonne de recherche
Dim CollR2 As String 'Colonne de recherche 2
Dim RepFichier As String ' chemin complet Repertoire + Nom du fichier + Nom Feuille recherche + Plage recherche
Dim MesErreur As String 'Message si erreur
Dim Varcherche As String 'Var1 + Var2 de recherche
Dim CollCherche As String 'Colonne 1 + colonne 2 de recherche

Repertoire = "\\serveur.net\entreprise\BUME\Prod\00_CROM\"
NomFichier = "CROMDEC.xlsm"
FeuilleR = "Planning"
PlageR = "A:AJ"
RepFichier = "'" & Repertoire & "[" & NomFichier & "]" & FeuilleR & "'!" & PlageR & ""
CollR = "'" & Repertoire & "[" & NomFichier & "]" & FeuilleR & "'!U:U"
CollR2 = "'" & Repertoire & "[" & NomFichier & "]" & FeuilleR & "'!AB:AB"
Varcherche = Range("Machine").Value & "Planif"
CollCherche = CollR & CollR2

'***Rercherche Matière Liste Machine """Machine = Nom de cellule"""
Worksheets("CDE").Range("C13").Formula = "=IFERROR(Index(" & RepFichier & ",Match(" & Varcherche & "," & CollCherche & ",0),31)," & MesErreur & ")"
Rechercher des sujets similaires à "formulevba enregistre vba propre"