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 :

Object does not support this property or method


Sujet :

Macros et VBA Excel

  1. #1
    Membre confirmé Avatar de Runsh63
    Homme Profil pro
    Contrôleur de gestion
    Inscrit en
    Mars 2011
    Messages
    476
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : Contrôleur de gestion
    Secteur : Transports

    Informations forums :
    Inscription : Mars 2011
    Messages : 476
    Points : 478
    Points
    478
    Par défaut Object does not support this property or method
    Bonjour,

    Je viens de me faire insulter par Excel, ce qu'il m'a dit est dans le titre. Plus sérieusement, ci-dessous la ligne surlignée qui a stoppé l'exécution de ma macro.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Format(Round(CDbl(.Sum(.Range("E1:E" & LR3))), 2), "# ##0.00")
    Pourriez-vous SVP m'expliquer ce qui ne convient pas et me donner une solution pour contourner ce problème ?
    Je vous remercie d'avance !

    Cordialement,

    Runsh
    Runsh

  2. #2
    pgz
    pgz est déconnecté
    Expert éminent Avatar de pgz
    Homme Profil pro
    Développeur Office VBA
    Inscrit en
    Août 2005
    Messages
    3 692
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 70
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Office VBA
    Secteur : Conseil

    Informations forums :
    Inscription : Août 2005
    Messages : 3 692
    Points : 6 591
    Points
    6 591
    Par défaut
    Bonjour.

    Comme sur cette ligne tu as et on peut supposer que la ligne est sous un mais on ne le voit pas.

    Le with doit porter sur un objet qui a pour propriété et méthode et ce qui n'est pas courant et le pb vient probalement de là.

    Cdlt,

    PGZ
    pluritas non est ponenda sine necessitate - Le rasoir d'Okham
    Ne jamais attribuer à la malignité ce que la stupidité peut expliquer -Le rasoir d'Hanlon

  3. #3
    Membre confirmé Avatar de Runsh63
    Homme Profil pro
    Contrôleur de gestion
    Inscrit en
    Mars 2011
    Messages
    476
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : Contrôleur de gestion
    Secteur : Transports

    Informations forums :
    Inscription : Mars 2011
    Messages : 476
    Points : 478
    Points
    478
    Par défaut
    Bonjour pgz,

    Je vais te donner un peu plus de code, mais c'est en effet sous un "With" :

    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
    81
    82
    'Détermination type de compte
     
        With Sheets("Dataloader")
        Dim BSE As Integer, AccType As Range
        BSE = .Cells(PNLS, 1).Offset(-1, 0).Row
        For Each AccType In .Range("E2:E" & BSE)
            If AccType.Value < 0 Then
                AccType.Offset(0, -2).Value = "C"
            Else
                AccType.Offset(0, -2).Value = "D"
            End If
        Next AccType
     
        .Range("C" & PNLS & ":C" & PNLE) = "R"
     
        'Entité
     
        .Range("A2:A" & PNLE) = "LCEPL"
     
        'Activité BS
     
        .Range("D2:D" & BSE) = "PLBU"
     
        'Données
     
        .Range("J2:J" & PNLE) = "SOCIAL"
     
        'Date BS
     
        Dim ClosingDate As Date
        ClosingDate = InputBox("Entrez le dernier jour du mois clôturé (Format = jj/mm/aaaa)", "Définition de la date")
        .Range("G2:G" & BSE) = ClosingDate
     
        'Montant en €
     
        Dim ClosingRate As Single, AverageRate As Single, EURAmount As Range
            ClosingRate = Round(CDbl(InputBox("Entrez le taux de clôture PLN => EUR (Séparateur de décimal => virgule)", "Définition du taux de clôture")), 6)
            AverageRate = Round(CDbl(InputBox("Entrez le taux moyen PLN => EUR (Séparateur de décimal => virgule)", "Définition du taux moyen")), 6)
     
        For Each EURAmount In .Range("F2:F" & BSE)
            EURAmount.Value = EURAmount.Offset(0, -1).Value * ClosingRate
        Next EURAmount
     
        For Each EURAmount In .Range("F" & PNLS & ":F" & PNLE)
            EURAmount.Value = EURAmount.Offset(0, -1).Value * AverageRate
        Next EURAmount
     
        'MEF Compte au format standard
     
        Dim k As Byte, Account As Range
        k = 1
        For Each Account In .Range("B2:B" & PNLE)
            Account.Value = Account.Value * k
        Next Account
     
        'Supprimer lignes avec montant nul
     
        Dim NoAmount As Long
        For NoAmount = PNLE To 2 Step -1
            If .Cells(NoAmount, 5).Value = 0 Then
                .Rows(NoAmount).Delete
            End If
        Next NoAmount
     
        'Définir nom de champ
     
        .Range("A1:J1") = Array("Entité", "Compte", "D-C-R", "Activité", "Montant en devise locale", "Montant en €", "Date", "Libellé", "Pièce", "Données")
     
        'Contrôle du résultat final
     
        Dim LR3 As Long, Disc2 As String, Question2 As Integer
        LR3 = .Cells(.Rows.Count, 1).End(xlUp).Row
        Disc2 = Format(Round(CDbl(.Sum(.Range("E1:E" & LR3))), 2), "# ##0.00")
        Question = MsgBox("La somme de la balance et du compte de résultat est de " & Disc2 & " est-ce correct ?", vbYesNo + vbQuestion, "Calcul de la somme des données en devise locale")
        If Question = vbNo Then
            MsgBox "Erreur dans la compilation des données, veuillez recommencer la procédure depuis le début", vbCritical, "Erreur"
            End
        Else
            MsgBox "Compilation du fichier ADN pour LCE CZ terminée", vbOKOnly + vbExclamation, "Fin de la procédure"
        End If
        End With
    End Sub
    Désol", j'ai tout balancé depuis le "With", mais tout marche jusqu'à cette fameuse ligne... Je ne vois pas pourquoi il m'embête, ça devrait marcher non ?

    Cordialement,

    Runsh
    Runsh

  4. #4
    pgz
    pgz est déconnecté
    Expert éminent Avatar de pgz
    Homme Profil pro
    Développeur Office VBA
    Inscrit en
    Août 2005
    Messages
    3 692
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 70
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Office VBA
    Secteur : Conseil

    Informations forums :
    Inscription : Août 2005
    Messages : 3 692
    Points : 6 591
    Points
    6 591
    Par défaut
    Re,

    As-tu essayé en enlevant le "." devant Sum?

    PGZ
    pluritas non est ponenda sine necessitate - Le rasoir d'Okham
    Ne jamais attribuer à la malignité ce que la stupidité peut expliquer -Le rasoir d'Hanlon

  5. #5
    Membre confirmé Avatar de Runsh63
    Homme Profil pro
    Contrôleur de gestion
    Inscrit en
    Mars 2011
    Messages
    476
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : Contrôleur de gestion
    Secteur : Transports

    Informations forums :
    Inscription : Mars 2011
    Messages : 476
    Points : 478
    Points
    478
    Par défaut
    Je dis n'importe quoi, ça fonctionne très bien apparamment...
    Désolé pour la perte de temps !

    Sans le "." il aime pas, mais avec ça fonctionne.
    Merci d'avoir pris le temps de te pencher sur mon problème qui n'en est pas un !

    Cordialement,

    Runsh
    Runsh

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

Discussions similaires

  1. [AC-2010] Erreur 438 object doesn't support this property
    Par meritites dans le forum Access
    Réponses: 3
    Dernier message: 30/10/2014, 10h23
  2. IE9 -> SCRIPT438: Object doesn't support this property or method.
    Par alain.mazag dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 19/03/2013, 13h50
  3. [JavaScript + Flash] Object doesn't support this property or method
    Par messier79 dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 15/09/2011, 20h43
  4. error sur page "Object doen't support this property"
    Par Javix dans le forum Mise en page CSS
    Réponses: 4
    Dernier message: 08/01/2009, 10h43
  5. Réponses: 1
    Dernier message: 06/03/2008, 20h24

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