Erreur 91 ouverture d'un fichier lecture,fermeture

Bonjour à tous,

Thauthème m'a donné un code pour ouvrir un excel, prendre les informations que je veux puis le fermer mais il ne marche pas sur mon fichier je ne comprends pas...

Je vous demande de l'aide pour résoudre cette erreur d'exécution 91 : Variable objet ou variable ou variable de bloc With non définie sur la ligne ORF = CRF.Sheets("PARTS") qui se trouve au milieu de ma macro juste après l'ouverture du document.

Je vous remercie tous d'avance

Sub info_master()
Dim CD As Workbook 'déclare la variable CD (Classeur de Destination)
Dim OD As Worksheet 'déclare la variable OD (Onglet de Destination)
Dim CRF As Workbook 'déclare la variable CRF (Classeur de ReFérence)
Dim ORF As Worksheet 'déclare la variable ORF (Onglet de ReFérence)
Dim I As Integer ''déclare la variable I (Incrément)

Set CD = ThisWorkbook 'définit le classeur de destination CD (=ce classeur)
Set OD = CD.Sheets("Menu") 'définit l'onglet de destination OD
On Error Resume Next 'gestion des erreurs (en cas d'erreur passe à la ligne suivante)
Set CRF = Workbooks("DATAS.xlsx") 'définit le classeur de référence CRF (génère une erreur si ce classeur n'est pas ouvert)
If Err <> 0 Then 'condition : si une erreur a été générée
    Err.Clear 'supprime l'erreur
    'ouvre le classeur
    Workbooks.Open ("C:\Users\Nicky\Desktop\Project 4_Informatisation\EXAMPLE SUR INTERNET\DATA FROM DDM\DATAS.xlsx")
    Set CRF = ActiveWorkbook 'définit le classeur de référence CRF
End If 'fin de la condition
On Error GoTo 0 'annule la gestion des erreurs
ORF = CRF.Sheets("PARTS") 'définit l'onglet de référence ORF
If Not IsEmpty(OD.Range("D2")) Then 'condition : si D2 de l'onglet OD n'est pas vide
   I = 2 'initialise I
   'tant que la cellule ligne I, colonne 1 (=A) de l'onglet de référence ORF n'est pas vide
   'et qu'elle est différente de la cellule D2 de l'onglet OD
   While ORF.Cells(I, 1) <> "" And ORF.Cells(I, 1) <> OD.Range("D2")
        I = I + 1 'incrémente I
   Wend 'exécute la boucle
   OD.Range("D2") = ORF.Cells(I, 1) 'récupère en D2 de l'onglet OD la valeur de la cellule ligne I colonne 1 (=A) de l'onglet ORF
   OD.Range("E2") = ORF.Cells(I, 4) 'récupère en E2 de l'onglet OD la valeur de la cellule ligne I colonne 4 (=D) de l'onglet ORF
   OD.Range("G2") = ORF.Cells(I, 3) 'récupère en G2 de l'onglet OD la valeur de la cellule ligne I colonne 3 (=C) de l'onglet ORF
   CRF.Close False 'ferme le classeur de référence CRF sans enregistrer les modification
   CD.Save 'sauve le classeur de destination CD (ce classeur
End If
End Sub

Bonsoir

Il faut

Set ORF = CRF.Sheets("PARTS")

Bien entendu tu as une page "PARTS" dans le classeur que tu ouvres

Bonjour,

Oubli simple mais pas voyante quand on a la tête dans le guidon et surtout quand on apprend les macros

Merci beaucoup Banzai !

Au plaisir.

Rechercher des sujets similaires à "erreur ouverture fichier lecture fermeture"