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 :

"Erreur 75" lors d'un appel de userform [XL-2000]


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Inscrit en
    Décembre 2011
    Messages
    31
    Détails du profil
    Informations forums :
    Inscription : Décembre 2011
    Messages : 31
    Par défaut "Erreur 75" lors d'un appel de userform
    Bonjour Forum!!

    je me retourne vers vous car je n'y comprend rien à mon soucis...

    J'ai un fichier excel avec plusieurs macro et plusieurs USF.

    Mon problème:
    j'ai un bouton en feuille 1 qui m'appelle une macro. Cette macro me copie la dernière ligne remplie en feuille 1 vers la feuille 2 et un USF apparaît signalant que la copie a bien été réalisée et donnant les consigne permettant la suite. Un bouton "OK" permet de fermer ce USF d'information.

    Le problème est que si je fais cette manip une seconde fois, un message d'erreur "75" apparaît et me mentionne que le problème vient de ma ligne USF1.show

    Ne rencontrant le problème que pour cet USF, je l'ai déjà supprimé, recréé, nommer differemment... mais rien n'y fait.
    Et si jamais je ferme l'éditeur VBA, et tente une troisième fois, là c'est mon fichier qui plante....

    ce que je comprends encore moins c'est que si je le fais une fois, ça marche, j'enregistre, ferme mon fichier, ouvre mon fichier et recommence, là ça plante pas....

    Je n'y comprends rien...

    si un de vous à une idée.......

  2. #2
    Expert confirmé
    Homme Profil pro
    aucune
    Inscrit en
    Septembre 2011
    Messages
    8 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : aucune

    Informations forums :
    Inscription : Septembre 2011
    Messages : 8 208
    Par défaut
    Bonjour,

    1. Peux-tu poster la macro ?
    2. Quel est le texte exact du message d'erreur ?

  3. #3
    Membre averti
    Inscrit en
    Décembre 2011
    Messages
    31
    Détails du profil
    Informations forums :
    Inscription : Décembre 2011
    Messages : 31
    Par défaut
    Le message d'erreur est :

    "erreur 75 : objet spécifié introuvable"

    ma macro:
    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
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    Sub Macro2()
     
    'Sauvegarde du fichier
    ActiveWorkbook.Save
     
    'créé une copie sauvegarde du classeur
     Dim Nom As String
     Dim chemin1 As String
     Dim Fichier As String
        Nom = Left(ActiveWorkbook.Name, Len(ActiveWorkbook.Name) - 4) & Format(Date, "(yyyy-mm-dd)") & ".xls"
        chemin1 = "S:\Copie Sauvegarde"
        Fichier = chemin1 & "\" & Nom
    ActiveWorkbook.SaveCopyAs Filename:=Fichier
     
    'Vérouille la ligne nouvellement remplie
    If Selection.Locked = False Then
        ActiveSheet.Unprotect
        ActiveSheet.Select
        Selection.Locked = True
        Selection.FormulaHidden = False
        ActiveSheet.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True
    End If
     
    ' Génération du rapport par copie de la ligne sélectionnée sur la feuille "Rapport"
    Sheets("Rapport").Select
        ActiveSheet.Unprotect
        Rows("122:126").Select
        With Selection
            .Orientation = 0
            .AddIndent = False
            .ShrinkToFit = False
            .MergeCells = False
        End With
    Range("A122:BA126").ClearContents
     
    Sheets("Tableau").Select
        Selection.Copy
    Sheets("Rapport").Select
        Range("A122").Select
        ActiveSheet.Paste Link:=True
     
    'Efface les avis et commentaires de l'évaluation précédente
    Range("K83:P83").ClearContents
    Range("A99:P99").ClearContents
    Range("K106:P106").ClearContents
    Range("A119:P119").ClearContents
     
    'Affiche toutes les lignes du rapport
    Range("A1:Q119").Select
    Selection.EntireRow.Hidden = False
     
    'Masque les lignes inutiles 
    Dim i As Integer
    For i = 1 To 74
    If Range("A" & i) = "NA" Then
    Rows(i).Hidden = True
    End If
    Next i
     
    'Protège le rapport
    ActiveSheet.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True
     
    ' Génération du rapport par copie de la ligne sélectionnée sur la feuille "Report"
    Sheets("Report").Select
        ActiveSheet.Unprotect
        Rows("122:126").Select
        With Selection
            .Orientation = 0
            .AddIndent = False
            .ShrinkToFit = False
            .MergeCells = False
        End With
    Range("A122:BA126").ClearContents
     
    Sheets("Tableau").Select
        Selection.Copy
    Sheets("Report").Select
        Range("A122").Select
        ActiveSheet.Paste Link:=True
     
    'Efface les avis et commentaires de l'évaluation précédente
    Range("K83:P83").ClearContents
    Range("K106:P106").ClearContents
    Range("H24:P28").ClearContents
    Range("A73:P73").ClearContents
    Range("A98:P99").ClearContents
    Range("A119:P119").ClearContents
     
    'Affiche toutes les lignes du rapport
    Range("A1:Q119").Select
    Selection.EntireRow.Hidden = False
     
    'Masque les lignes inutiles en général
    Dim j As Integer
    For j = 1 To 74
    If Range("A" & j) = "NA" Then
    Rows(j).Hidden = True
    End If
    Next j
     
    'Protège le rapport
    ActiveSheet.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True
     
    Sheets("Rapport").Activate
     
    Confirm_rapport.Show
     
     
    End Sub
    je travaille sous excel 2000 pour le moment...

    Je joints mon fichier, se sera peut être plus pratique...

    mon soucis viens du bouton en feuille 1 "Tableau" et colonne BA : "sauvegarder et générer le rapport"
    Fichiers attachés Fichiers attachés

  4. #4
    Expert confirmé
    Homme Profil pro
    aucune
    Inscrit en
    Septembre 2011
    Messages
    8 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : aucune

    Informations forums :
    Inscription : Septembre 2011
    Messages : 8 208
    Par défaut
    J'ai essayé avec XL2010 sans réussir à reproduire le problème. Quelle est ta version d'Excel ?

  5. #5
    Inactif  

    Homme Profil pro
    cuisiniste
    Inscrit en
    Avril 2009
    Messages
    15 374
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : cuisiniste
    Secteur : Bâtiment

    Informations forums :
    Inscription : Avril 2009
    Messages : 15 374
    Billets dans le blog
    8
    Par défaut heu
    bonjour


    a partir de ceci
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    ActiveWorkbook.SaveCopyAs Filename:=Fichier
    tout le reste de ta macro travaille sur le nouveau fichier créé
    si c'est ton desir a lors ca va mais si le reste de la macro doit travailler sur le fichier initial alors c'est choux blanc il faut réactiver le classeur initial
    pour cela il serait bien d'instancier deux variable de type object designant les deux classeur.la premiere au depart de la macro designant le classeur initial

    et la deuxieme apres la ligne de sauvegarde

    exemple :
    debut de macro
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    sub ........
    dim wbk1 as object
    dim wbk2 as object
     
    wbk1=thisworkbook
    'reste de ta macro.....
    'et ensuite apres ta ligne avec le "save as"
    wbk2=activeworkbook
    'ici tu peux fermer le nouveau classeuren supprimant les alerte 
    application.displayalerts=false
    wbk2.close 
    wbk1activate 
    'et la le reste de ta macro va travailler sur le bon fichier

    au plaisir
    mes fichiers dans les contributions:
    mail avec CDO en vba et mail avec CDO en vbs dans un HTA
    survol des bouton dans userform
    prendre un cliché d'un range

    si ton problème est résolu n'oublie pas de pointer : : ça peut servir aux autres
    et n'oublie pas de voter

  6. #6
    Membre averti
    Inscrit en
    Décembre 2011
    Messages
    31
    Détails du profil
    Informations forums :
    Inscription : Décembre 2011
    Messages : 31
    Par défaut
    Daniel.C, je travaille avec excel 2000.

    PatrickToulon, j'ai essayé ta solution mais elle me ferme mon classeur... quand je fais
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ActiveWorkbook.SaveCopyAs Filename:=Fichier
    Je ne fais que créer une copie de mon fichier (pour les archives) mais je ne travaille pas dessus, du coup, avec ton code, je n'ai plus de classeur ouvert...

    je ne vois pas d'où ça viens, en faite, une fois mon USF lancé une première fois, il devient même inaccessible depuis l'éditeur VBA avec le message "erreur d'accès/chemin fichier"...

    ????? là je suis perdue....

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

Discussions similaires

  1. Réponses: 1
    Dernier message: 22/03/2009, 19h44
  2. [Wamp] Erreur d'entête lors de l'appel à session_start
    Par gozu13 dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 7
    Dernier message: 04/03/2008, 18h51
  3. erreur (methode introuvable) lors de l'appel
    Par anisj1m dans le forum Wildfly/JBoss
    Réponses: 1
    Dernier message: 17/08/2007, 14h44
  4. Erreur : Non implémenté lors de l'appel d'un evenement
    Par pedouille dans le forum Général JavaScript
    Réponses: 7
    Dernier message: 10/12/2005, 10h15

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