Vba Problème avec formule

Résolu
rochjl Messages postés 4 Statut Membre -  
rochjl Messages postés 4 Statut Membre -
Bonjour,

je travail avec windows XP, Office 2007 .

j'ai un fichier excel contenant des formules.
dès le début de l'année un nouveau fichier est créé et j'aimerai que les formules soient mises à jour par rapport au fichier source de l'année en cours.

je ne sais pas si l'explication est bien claire mais par exemple la formule ci dessous fonctionne presque.

ActiveCell.FormulaR1C1 = _
"='M:\........\.......\........" & NomFichierEnergie & "CONTRÔLE DES SAISIES'!" & "l89c24"

le hic, c'est qu'au resultat à la fin de ma formule, la dernière partie est cernée de caractère " ' "c'est à dire 'l89c24' au lieu de l89c24.

comment faire?
merci pour toute réponse

J-Louis

2 réponses

  1. Bidouilleu_R Messages postés 1209 Statut Membre 296
     
    le problème vient que tu utilises les références relatives

    "Formula R1C1" ce qui implique que les formules doivent être référencées par rapport à la cellule active. ( c'est lourd)
    L'enregistreur l'utilise ... donc il faut faire attention
    Utilise plutôt Formula

    fais ce test sur la feuil2 en mettant une valeur en b10 sur la feuil1

    Sub test2()
       Range("B3").Select
       valeur = 3
        ActiveCell.Formula = "=Feuil1!b10 *" & valeur
    End Sub
    0
  2. rochjl Messages postés 4 Statut Membre
     
    Bonsoir Bidouilleu_R,

    et merci pour cette réponse rapide.

    je testerai dès que possible et vous tiendrai au courant.

    Merci encore et bonne soirée.

    J-Louis
    0
    1. rochjl Messages postés 4 Statut Membre
       
      Bonsoir Bidouilleu_R.


      Ce que vous m'avez proposé fonctionne très bien mais ce n'était pas ce que j'attendais.

      Je me suis mal exprimé, mais j'ai fini par trouver mon bonheur et ça marche nickel.
      voici le code:

      Sub procLiaison()
      Dim strLink As String
      Dim i As Integer
      Dim varLinks As Variant

      ' Charge la liste des liaisons dans varLinks
      varLinks = ThisWorkbook.LinkSources
      ' Nouveau chemin
      strLink = "C:\Users\MOMO\Desktop\Horaire2010.xlsm\Horaire2010.xlsm"

      If Not IsEmpty(varLinks) Then
      ' Boucle sur la liste des liaisons
      For i = 1 To UBound(varLinks)
      ' Met le lien à jour.
      ThisWorkbook.ChangeLink varLinks(i), strLink
      Next i
      End If

      End Sub

      Trouvé dans: Hardwear.fr

      Merci tout de même pour votre aide, on n'en sait jamais trop.

      Bon W-End,

      J-Louis
      0