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 :

[XL 2010] Pastespecial xlformulas ne fonctionne pas


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Homme Profil pro
    Consultant fonctionnel
    Inscrit en
    Juillet 2013
    Messages
    22
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Consultant fonctionnel
    Secteur : Conseil

    Informations forums :
    Inscription : Juillet 2013
    Messages : 22
    Par défaut [XL 2010] Pastespecial xlformulas ne fonctionne pas
    Bonjour à tous,

    Oupss, me suis trompé: ce post devrait être dans Macro & VBA Excel, non ?

    J'ai un souci avec le code suivant:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    Sub NewLine()
    Dim rang    As Range
        Application.ScreenUpdating = False
        ActiveWorkbook.Sheets("ATOS-BE").Activate
        ActiveCell.EntireRow.Select
        Selection.Insert Shift:=xlDown
        Set rang = ActiveSheet.Cells(ActiveCell.Row, 1)
        Range("A774:FZ774").Copy
        rang.Offset(0, 0).PasteSpecial Paste:=xlFormulas, Operation:=xlNone, _
            SkipBlanks:=False, Transpose:=False
        Application.CutCopyMode = False
    End Sub
    Je l'ai installé dans un autre fichier où il fonctionne sans problème mais ici les formules ne sont jamais copiées.
    Certaines cellules de la rangée A774 à FZ774 contiennent des formules comme ceci:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    =SI(ET(E717>0;NON(E717="-"));1;"")
    Dans mon fichier original (où ça marche), j'ai une formule du genre =A2*A4.

    Que faut-il faire pour que ma formule =SI... soit recopiée ?

    Merci d'avance pour l'aide.

  2. #2
    Expert confirmé
    Homme Profil pro
    aucune
    Inscrit en
    Septembre 2011
    Messages
    8 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : aucune

    Informations forums :
    Inscription : Septembre 2011
    Messages : 8 208
    Par défaut
    Bonjour,

    Si la macro fonctionne dans un classeur et pas dans un autre, c'est une question de données. Est-ce que tu peux mettre le classeur en pièce jointe ?

  3. #3
    Membre averti
    Homme Profil pro
    Consultant fonctionnel
    Inscrit en
    Juillet 2013
    Messages
    22
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Consultant fonctionnel
    Secteur : Conseil

    Informations forums :
    Inscription : Juillet 2013
    Messages : 22
    Par défaut
    Bonjour Daniel.C,

    Désolé pour la réponse tardive.
    Voici le classeur édulcoré.
    Pour rappel, c'est un excel 2010.

    Merci pour ton support.
    Fichiers attachés Fichiers attachés

  4. #4
    Expert confirmé
    Homme Profil pro
    aucune
    Inscrit en
    Septembre 2011
    Messages
    8 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : aucune

    Informations forums :
    Inscription : Septembre 2011
    Messages : 8 208
    Par défaut
    Bonjour,

    A quoi correspond "ActiveCell" ? A n'importe quelle cellule ?

  5. #5
    Membre averti
    Homme Profil pro
    Consultant fonctionnel
    Inscrit en
    Juillet 2013
    Messages
    22
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Consultant fonctionnel
    Secteur : Conseil

    Informations forums :
    Inscription : Juillet 2013
    Messages : 22
    Par défaut
    Oui, à n'importe quelle cellule de la ligne au-dessus de laquelle on insère la nouvelle ligne.

  6. #6
    Expert confirmé
    Homme Profil pro
    aucune
    Inscrit en
    Septembre 2011
    Messages
    8 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : aucune

    Informations forums :
    Inscription : Septembre 2011
    Messages : 8 208
    Par défaut
    A force d'insérer des lignes, la ligne 774 que tu copies se décale vers le bas. celle que tu copies ensuite ne contient plus rien.

  7. #7
    Expert éminent Avatar de Menhir
    Homme Profil pro
    Ingénieur
    Inscrit en
    Juin 2007
    Messages
    16 037
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2007
    Messages : 16 037
    Par défaut
    Citation Envoyé par juraph Voir le message
    Je l'ai installé dans un autre fichier où il fonctionne sans problème mais ici les formules ne sont jamais copiées.
    Certaines cellules de la rangée A774 à FZ774 contiennent des formules comme ceci:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    =SI(ET(E717>0;NON(E717="-"));1;"")
    Dans mon fichier original (où ça marche), j'ai une formule du genre =A2*A4.
    Ca ressemble beaucoup à un problème de langue.
    VBA ne comprend que les formules Excel en anglais. Il est donc probable qu'il ne comprenne pas les Si et les ET.

    La solution la plus simple est d'essayer une simple transmission avec un "=" entre les Formula des zones concernées :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Range(Destination).Formula = Range(Source).Formula
    Je viens de tester, ça passe bien.

    Cela dit, je viens aussi de tester le PasteSpecial sur ce type de fonction sur mon poste et ça copie sans problème les fonctions.
    Donc rien ne garantie que si le PasteSpecial ne passe pas bien chez toi, ma solution fonctionne.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [XL-2010] Méthode select ne fonctionne pas sur 2010 contrairement à 2003
    Par will-1981 dans le forum Excel
    Réponses: 1
    Dernier message: 15/03/2013, 16h22
  2. [XL-2010] Macro fonctionne pas sous excel 2010 ?
    Par mlafleur74 dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 18/05/2012, 10h16
  3. [XL-2010] calendrier ne fonctionne pas office 2010
    Par typhoon751 dans le forum Macros et VBA Excel
    Réponses: 0
    Dernier message: 10/11/2010, 10h15
  4. Réponses: 4
    Dernier message: 21/10/2010, 17h12

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