IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Macros et VBA Excel Discussion :

La copie de formule en VBA


Sujet :

Macros et VBA Excel

  1. #1
    Membre confirmé
    Inscrit en
    Juillet 2008
    Messages
    70
    Détails du profil
    Informations forums :
    Inscription : Juillet 2008
    Messages : 70
    Par défaut La copie de formule en VBA
    Bonjour,

    Je rencontre un petit soucie lors de la copie (Selection.copy/slection.paste) de cellules contenant des formules d'un classeur excel vers un autre classeur excel.
    Mon objectif est de recopier les formules d'un onglet dans un autre onglet du meme nom d'un second classeur.
    Le hic est que ces formules extraient les données sur les onglets de l'ancien classeur et non sur ceux du nouveau bien qu'ils aient les mêmes noms.

    ex de formule obtenue après copie:
    ='[RP_N-1_TRAITE.xls]Détail'!#REF!
    RP_N-1_TRAITE.xls étant l'ancien fichier Excel

    Comment faire pour que ces formules ne pointe plus sur cet ancien classeur ??
    J'ai regardé dans la FAQ VBA et dans les autres posts du forum mais je n'ai rien trouvé.
    Merci pour votre aide.

  2. #2
    Membre expérimenté Avatar de ilcocodrillo
    Profil pro
    Inscrit en
    Février 2007
    Messages
    260
    Détails du profil
    Informations personnelles :
    Âge : 19
    Localisation : France

    Informations forums :
    Inscription : Février 2007
    Messages : 260
    Par défaut
    Commence par là : tuto complet vba

  3. #3
    Membre Expert Avatar de Godzestla
    Homme Profil pro
    Chercheur de bonheur
    Inscrit en
    Août 2007
    Messages
    2 403
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : Belgique

    Informations professionnelles :
    Activité : Chercheur de bonheur
    Secteur : Industrie

    Informations forums :
    Inscription : Août 2007
    Messages : 2 403
    Par défaut
    une solution possible est de faire un Find-replace après copy en remplacant ANCIEN_WORKBOOK par NOUVEAU_WORKBOOK pour toutes les occurences.

    Je sais que cela fonctionne manuellement et cela doit donc être possible en VBA.

  4. #4
    Membre Expert
    Avatar de zazaraignée
    Profil pro
    Étudiant
    Inscrit en
    Février 2004
    Messages
    3 174
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2004
    Messages : 3 174
    Par défaut
    Essaie plutôt de passer par une variable qui récolte la formule de la cellule. Exemple (avec FormulaLocal, tu copie le contenu visible dans la barre de formule d'excel et non la formule avec ses noms d'origine en... anglais) :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    Sub CopierFormule()
    '
    ' CopierFormule Macro
    ' Macro enregistrée et modifiée le 2008-08-19 par zaza
    '
        Dim formule As String
        formule = Workbooks("Origine.xls").Sheets("Feuil1").Range("A5").FormulaLocal
        Workbooks("destination.xls").Sheets("Feuil1").Range("A5").FormulaLocal = formule
    End Sub

  5. #5
    Membre Expert Avatar de Godzestla
    Homme Profil pro
    Chercheur de bonheur
    Inscrit en
    Août 2007
    Messages
    2 403
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : Belgique

    Informations professionnelles :
    Activité : Chercheur de bonheur
    Secteur : Industrie

    Informations forums :
    Inscription : Août 2007
    Messages : 2 403
    Par défaut
    Ilcocodrillo
    Commence par là : tuto complet vba
    Génial ce Tuto. je ne connaissais pas. Merci 100000 fois. Et dire que c'est dit VBA "Débutant". Pfuiiiiiiii.
    Au moins je ne vais pas mourir idiot.

    NB, s'il existe une version Avancée, merci de me dire où la trouver.

    Thierry.

Discussions similaires

  1. [XL-2003] insertion de ligne en vba avec copie de formules
    Par Adweuz dans le forum Macros et VBA Excel
    Réponses: 0
    Dernier message: 30/05/2011, 08h40
  2. [XL-2003] VBA - Problème d'insertion de ligne avec copie de formules
    Par oracle7556 dans le forum Macros et VBA Excel
    Réponses: 8
    Dernier message: 04/06/2010, 15h22
  3. [XL-2003] Copie d'une formule avec VBA
    Par akane dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 15/09/2009, 19h32
  4. {VBA Excel}Copie de formule d'où je veux
    Par Thomas69 dans le forum Macros et VBA Excel
    Réponses: 11
    Dernier message: 16/08/2007, 11h15
  5. Copier une formule avec vba
    Par NAMORJOSE dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 19/05/2006, 00h12

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo