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 :

Inserer une formule erreur 1004


Sujet :

Macros et VBA Excel

  1. #1
    Nouveau membre du Club
    Homme Profil pro
    Inscrit en
    Février 2008
    Messages
    42
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Février 2008
    Messages : 42
    Points : 35
    Points
    35
    Par défaut Inserer une formule erreur 1004
    Bonjour,
    Petit souci pour insérer ma formule, pourtant après avoir regardé sur le forum j'utilise formulalocal mais toujours le bug
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    Sub essai()
     
     
    '
    ' essai Macro
    '
    ' Keyboard Shortcut:
    '
    '
    Dim wkbSource As Workbook, wkbdestination As Workbook
    Dim NouvelleFeuille As Worksheet
    Dim Fichier As String, Chemin As String
    Dim Plage As Variant, Plage1 As Variant
    Dim Ligne As Long
    Dim C As Range, Plg As Range
    Dim i As Integer
    '
    '
    ' ouverture fichier
    '
    Chemin = "G:\Users\"
        ChDrive "G"
        ChDir Chemin
        Fichier = Application.GetOpenFilename()  'on peut ajouter un filtre pour n'avoir que les types de fichiers voulus
     
        If Fichier = "Faux" Then Exit Sub
    Set wkbSource = Workbooks.Open(Fichier)
    '
    'Renommer la feuille
    '
    ActiveSheet.Name = "miseajour"
    '
    '
    'Positionner le pointeur sur la première cellule vide
    '
    Range("B1").Select
    Selection.End(xlDown).Select
    ActiveCell.Offset(1, 0).Range("B1").Select
    LIGNEFIN = ActiveCell(1, 0).Address()
    FIN = Range(LIGNEFIN).Row
    '
    '
    '
    '
    '
    '
    '
    'Selection des colonnes de donnees
    '
        With Sheets("miseajour")
            .Columns("M:O").Delete
            .Columns("I:K").Delete
            .Columns("E:G").Delete
            .Columns("C:C").Delete
            .Range("C:C").Cut Range("K1")
            .Range("D:D").Copy Range("L1")
            .Columns("C:C").Delete
                '
                'Mettre les formules 
                '
                For i = 2 To Sheets("miseajour").Range("C65536").End(xlUp).Row 'trouve la derniere ligne de la colonne" C" en partant d'en bas
                    If Sheets("miseajour").Cells(i, 3).Value <> "" Then  'si C n'est pas vide alors
                      Range("C2").FormulaLocal = "=SI(J2="";K2;J2"
                      Range("C2").Copy
                      Range("C3:C" & i).Select
                      Selection.PasteSpecial
                    End If
                Next
        End With
    '
    '
    '
    '
    ' Selectionner la zone
    '
    LIGNEFIN = ActiveCell.Row
    Range("A1" & ":N" & LIGNEFIN).Select
    '
    ' ouverture fichier destination
    '
    Merci d'avance pour votre aide

  2. #2
    Invité
    Invité(e)
    Par défaut
    Bonjour,
    Rien à voir avec formulalocal mais la formule (quand on ouvre une porte on la referme!


    "=SI(J2=" & chr(34) & chr(34) & ";K2;J2)"
    Dernière modification par Invité ; 04/07/2015 à 09h31.

  3. #3
    Expert éminent
    Homme Profil pro
    Inscrit en
    Août 2010
    Messages
    3 453
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Août 2010
    Messages : 3 453
    Points : 6 871
    Points
    6 871
    Par défaut
    Bonjour,

    il faut que tu double les guillemets :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    Range("C2").FormulaLocal = "=SI(J2="""";K2;J2)"
    Hervé.

  4. #4
    Nouveau membre du Club
    Homme Profil pro
    Inscrit en
    Février 2008
    Messages
    42
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Février 2008
    Messages : 42
    Points : 35
    Points
    35
    Par défaut
    Merci rdurupt et Theze pour vos réponses, mais j'ai toujours la même erreur
    De plus, désolé rdurupt mais j'ai besoin de précision sur l'ouverture des portes?!
    Merci

  5. #5
    Expert éminent sénior


    Profil pro
    Inscrit en
    Juin 2003
    Messages
    14 008
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 14 008
    Points : 20 038
    Points
    20 038
    Par défaut
    Bonjour,

    les codes de These et rdurupt sont similaire et les deux devraient fonctionner ... est-tu sur de ne pas avoir fait une erreur de copier/coller ... remontre nous ton code une fois corrigé...


    Il y as juste un truc qui me gène et qui est souvent source d'erreur même si je pense pas que dans le cas présent ce soit le cas mais il faut TOUJOURS préciser devant un objet range, cells ... la feuille concernée, ce que tu ne fait pas ....

  6. #6
    Invité
    Invité(e)
    Par défaut
    Bonjour bbil,
    pour compléter ta remarque "=SI(J2="";K2;J2"comme je me bat toujours avec le nombre de ["] j'utilise des chr(34)

  7. #7
    Nouveau membre du Club
    Homme Profil pro
    Inscrit en
    Février 2008
    Messages
    42
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Février 2008
    Messages : 42
    Points : 35
    Points
    35
    Par défaut
    Autant pour moi,
    effectivement c'est une erreur de copier coller
    merci rdurupt pour tes précisions

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

Discussions similaires

  1. [XL-2003] erreur de formulation ? (erreur 1004)
    Par cecyl dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 23/06/2010, 13h49
  2. Inserer une formule dans une cellule
    Par Tober dans le forum Général VBA
    Réponses: 0
    Dernier message: 12/03/2010, 10h20
  3. Inserer une formule (Longue) dans une cellule via VBA
    Par alex830001 dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 21/01/2009, 12h28
  4. Réponses: 11
    Dernier message: 30/10/2007, 09h35
  5. Insérer une image : Erreur 1004
    Par dp_favresa dans le forum VB 6 et antérieur
    Réponses: 4
    Dernier message: 26/10/2005, 14h01

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