Erreur d'exécution '-2147417848 (80010108): Erreur Automation

Bonjour,

En exécutant mon code VBA, j'ai bizarrement l'erreur suivante qui se produit:

Erreur d'exécution '-2147417848 (80010108):

L'objet invoqué s'est déconnecté de ses clients

C'est bizarre parce que je ne comprend pas vraiment pourquoi j'ai cette erreur 2 ou 3 fois sur 10 (en bidouillant de temps en temps dans le code).

Est ce que quelqu'un peut m'expliquer l'origine exacte de cette erreur et comment la résoudre?

Merci d'avance

Bonjour,

Curiosité ...

Dans le code de tes feuilles, au début, tu détermines J = (Target.Row), puis dans l'écriture, tu continues d'écrire Target.Row au lieu de J.

Pour l'erreur, je ne sais pas, je n'en ai pas.

Au début de la macro "Copier_DSN", ajoute Application.ScreenUpdating = False

pour accélérer l'exécution. Inutile de réactiver à la fin, la réactivation est automatique à la fin de l'exécution.

Toujours dans "Copier_DSN", j'écrirais

Range("A2:T" & ActiveSheet.UsedRange.Rows.Count).ClearContents pour limiter le nombre de lignes au lieu de

Range("A2:T" & Rows.Count).ClearContents

ric

L'objet invoqué s'est déconnecté de ses clients

L'objet élu Macron s'est déconnecté de la réalité des Français, et ça, c'est encore bien pire !

(pour connaître le n° d'erreur d'exécution, appelez les Gilets Jaunes au SAV bleu-blanc-rouge)

dhany

Bonjour à tous,

par ayoubrafik : j'ai cette erreur 2 ou 3 fois sur 10 (en bidouillant de temps en temps dans le code).

je ne comprend pas ce que tu veux dire ?

que fais-tu exactement lorsque l'erreur se produit ?

Bonjour,

Essaie ceci :

Public Sub Copier_DSN()
Dim ws As Worksheet, ws2 As Worksheet
Dim rng As Range
Dim lastRow As Long, lRow As Long

    With Application
        '.EnableEvents = False
        .ScreenUpdating = False
    End With

    Set ws = ActiveSheet
    Set ws2 = Worksheets("STOCK DSN 2")

    With ws
        lastRow = .Cells(.Rows.Count, 2).End(xlUp).Row
        .Cells(2, 1).Resize(lastRow - 1, 20).ClearContents
    End With

    With ws2
        lastRow = .Cells(.Rows.Count, 1).End(xlUp).Row
        .Cells(2, 2).Resize(lastRow - 1, 5).Copy ws.Cells(2, 2)
        .Cells(2, 9).Resize(lastRow - 1, 15).Copy ws.Cells(2, 6)
    End With

    With ws
        For lRow = lastRow To 2 Step -1
            Select Case .Cells(lRow, 19).Value
                Case "1910-Non Identifié", "1650-ORA-20000: PC2-00207", _
                     "1660-ORA-01422: exact fetch returns more than requested number of rows", _
                     "1680-ORA-20000: PC2-00207", _
                     vbNullString
                    .Cells(lRow, 1).EntireRow.Delete
                Case Else:
            End Select
        Next lRow
        lastRow = .Cells(.Rows.Count, 2).End(xlUp).Row
        .Sort.SortFields.Add _
                Key:=.Cells(2, 8).Resize(lastRow - 1), _
                SortOn:=xlSortOnValues, _
                Order:=xlAscending
        With .Sort
            .SetRange ws.Cells(1).Resize(lastRow - 1, 20)
            .Header = xlYes
            .Apply
            .SortFields.Clear
        End With
    End With

    'Application.EnableEvents = True

End Sub
Rechercher des sujets similaires à "erreur execution 2147417848 80010108 automation"