If Not IsEmpty : Propr. ou méth. non gérée par cet objet

Bonjour !

J'essaie de faire un test où, si la cellule pointée est vide, on exécute une boucle For.

Voici ma condition (surlignée par le débogueur):

If Not (IsEmpty(synthese.Cells(i, 2).Value)) Then

Un message d'erreur ('438') s'affiche pour me dire que la propriété ou la méthode n'est pas gérée par cet objet.

Je vois pas où est le soucis, des idées ? :s

Merci d'avance !

Bonjour,

A mon avis c'est par ce qu'on teste si une cellule est vide, pas une valeur...

Essaye en supprimant ".Value"

Si ce n'est pas ça, il nous faudra un extrait plus complet de ta macro (notamment voir comment est déclarée "synthese".

J'ai essayé avec .Value parce que dans l'autre cas ça ne marchait pas quand même :/

Voici le code complet :

Sub calcul()

    Dim synthese As Workbook, ana1 As Workbook, ana2 As Workbook, fSynthese As Worksheet, fAna1 As Worksheet, fAna2 As Worksheet, actuel As Worksheet
    Set synthese = Workbooks("synthese 2019")
    Set ana1 = Workbooks("Balance Analytique AAC 2019")
    Set ana2 = Workbooks("Balance Analytique AQU 2019")
    Set fAna1 = ana1.Worksheets(1)
    Set fAna2 = ana2.Worksheets(1)
    Set fSynthese = synthese.Worksheets(1)

    Dim somme As Variant, debut As Integer
    somme = 0

    For i = 1 To 2

        If i = 1 Then
            Set actuel = fAna1
            debut = 43
        Else
            Set actuel = fAna2
            debut = 65
        End If

        For j = debut To debut + 18
            If Not (IsEmpty(synthese.Cells(j, 2))) Then
                For k = 1 To 200
                    If synthese.Cells(j, 2) = Left(actuel.Cells(k, 1), 2) Then
                        somme = somme + actuel.Cells(k, 5)
                    End If
                    Next k
                synthese.Cells(j, 3) = somme
            End If
            Next j
        Next i

End Sub

C'est le soucis d'utiliser des objets avec un nom similaire...

synthese est un classeur, or une cellule (.Cells) est rattachée à un onglet.

Dans ton code, il faut donc remplacer les synthese par fSynthese.

Par ailleurs, tes déclarations peuvent être simplifiées :

    Set synthese = Workbooks("synthese 2019")
    Set ana1 = Workbooks("Balance Analytique AAC 2019")
    Set ana2 = Workbooks("Balance Analytique AQU 2019")
    Set fAna1 = ana1.Worksheets(1)
    Set fAna2 = ana2.Worksheets(1)
    Set fSynthese = synthese.Worksheets(1)

Devient :

    Set fAna1 = Workbooks("Balance Analytique AAC 2019").Worksheets(1)
    Set fAna2 = Workbooks("Balance Analytique AQU 2019").Worksheets(1)
    Set fSynthese = Workbooks("synthese 2019").Worksheets(1)

Effectivement, j'ai l'impression d'être aveugle des fois ;__;

Merci !

Rechercher des sujets similaires à "isempty propr meth geree cet objet"