Fonction set avec deux valeurs texte

Bonjour,

J'ai un petit soucis dans l'une de mes macros, je souhaite récupérer en argument deux valeur texte a regrouper ensemble (fusion) et à utiliser plus loin comme élément de recherche pour remplacement (plus exactement suppression)

Pour illustrer:

Sub Supprimer_adressage_ancien_masque()

    Dim StrFile, chemin As String

     Set i = Worksheets("Feuil2").Range("D10")
    chemin = i.Text
    Set j = Worksheets("Feuil2").Range("D12")
Set k = Worksheets("Feuil2").Range("D14")

    StrFile = Dir(chemin & "*.xlsx*")

    Application.ScreenUpdating = False

    Do While Len(StrFile) > 0
        With Workbooks.Open(chemin & StrFile)

     Cells.Replace What:="j.Text[k.Text]", Replacement:="", LookAt:=xlPart, SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _
        ReplaceFormat:=False

        ActiveWorkbook.Save   'enregistrer les modifications
        ActiveWorkbook.Close  'Fermer
       End With

    StrFile = Dir
    Loop
End Sub

set j et set k constitue ensemble un texte complet (sans espaces), en réalité un lien qui a suivi la copie des formules d'un autre fichier sur ceux que je vais traiter. Il doit donc être recherché et supprimé totalement de mon fichier Excel.

Seulement ma formule ne fonctionne pas.

sachant que:

D12 = C:\Users\me\Desktop\

D14 = GC**.xlsx

Et que je souhaite que ma formule me remplace "C:\Users\me\Desktop\[GC**.xlsx]" par ""

une idée les amis?

Bonjour,

inspire toi de la façon tu effectue ton dir ... tu y verra que si tu veux retrouve la valeur d'une variable il faut que tu la sorte de guillemets comme pour ta variable chemin..

Bonjour,

yxinmai

L'aide de VBA t'apprendrait déjà que Set n'est pas une fonction, mais une instruction qui permet d'affecter une référence d'objet à une variable (suite à lire dans l'Aide... ) , ce qui semble passablement éloigné de ton propos : récupérer en argument deux valeurs texte.

Argument ? définition : Constante, variable ou expression transmise à une procédure. ?

Cordialement.

Bonjour à vous,

Effectivement je pense que mon vocabulaire VBA n'est pas adapté et ne formule pas correctement ma demande.

J'étais pas très bien inspiré hier.

Bon je vais retranscrire ce que je recherche à faire même s'il semble plutôt clair que vous l'avez bien retranscrit.

Je dois copier l'ensemble des valeurs et formules d'un tableau d'un fichier excel A dans le tableau d'un fichier excel B

Pour cela j'ai créé un fichier excel C contenant mes macros et mon menu contextuel.

Lorsque je copie les lignes de mon tableau du fichier A pour les coller sur mon fichier B alors les lignes de formule me copie le lien de référence au fichier A du type : ='C:\Users\moi\Desktop\Repertoire1\[FichierA.xlsx]feuil2'!A5

Donc j'aimerais que la macro du fichier C me supprime sur tout les fichiers se trouvant dans le même fichier que le Fichier B le lien en rouge.

Donc moi je souhaiterais que l'utilisateur de mon menu contextuel renseigne sur mon fichier C

  • Le chemin du répertoire des fichiers ou je dois supprimer le lien et ou se trouve mon fichier B: C:\Users\moi\Desktop\Repertoire2\
  • Le chemin du répertoire du fichier A: C:\Users\moi\Desktop\Repertoire1\
  • Le type de fichier à modifier: [Fichier**.xlsx]

En appuyant sur le bouton de ma macro: cela m'ouvre tout les fichiers de mon répertoire2 et me supprimer tout les liens (C:\Users\moi\Desktop\Repertoire1\[Fichier**.xlsx] un par un.

voilà j’espère avoir été plus clair sur ce que j'ai voulu expliqué hier

encore excusez moi!

Rechercher des sujets similaires à "fonction set deux valeurs texte"