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 :

Problème avec un code de sauvegarde


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éprouvé
    Homme Profil pro
    Assistant aux utilisateurs
    Inscrit en
    Septembre 2007
    Messages
    1 896
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 64
    Localisation : France

    Informations professionnelles :
    Activité : Assistant aux utilisateurs
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Septembre 2007
    Messages : 1 896
    Par défaut Problème avec un code de sauvegarde
    Bonjour à tous,

    J'ai ce code qui me permet de sauvegarder une feuille dans un répertoire bien précis. Hors, lorsque je clique sur le bouton qui commande cette macro, une erreur arrive, à chaque fois le message "Objet requis" s'affiche et me renvoi à l'UserForm "UfBC1" du fichier principal.
    Comment rectifier cette erreur ? Pouvez-vous m'apporter votre aide s'il vous plait ?
    Merci par avance

    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
     
    Private Sub CmbSauv_Click()
    Dim Fich As String
    Dim c As Range
    Dim Fichier
    Application.ScreenUpdating = False
    With ThisWorkbook.Worksheets("BC1") 'copie la feuille BC1
        .Visible = True 'La feuille BC1 est visible
     
        'la feuille devient fichier et est enregistrée sur le K:\
        Fich = "K:\BONS 2013\BC" & " " & .Cells(17, 4).Value & " " & .Cells(15, 14).Value
        Fichier = Application.GetSaveAsFilename(Fich, "Excel Files (*.xls), *.xls")
        If Fichier <> False Then
            Worksheets("BC1").Copy
            With ActiveWorkbook
                .SaveAs Fichier             'Pour Excel 2003 et moins
                .Close
            End With
            For Each c In .Range("B25,G6,H14,N11,N15,N19,B24,A28:A55,N24,I28:K55")
                c.MergeArea.ClearContents
            Next c
            .Visible = False
        End If
    End With
    Windows("Saisie_engagements.xls").Activate
            Sheets("Accueil").Activate
     
    End Sub

  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,

    Qu'est-ce que tu appelles "fichier principal" ? Quels sont les classeurs ouverts ? Où se trouve le bouton déclenchant la macro. Y a-t-il une ligne en surbrillance ?

  3. #3
    Membre éprouvé
    Homme Profil pro
    Assistant aux utilisateurs
    Inscrit en
    Septembre 2007
    Messages
    1 896
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 64
    Localisation : France

    Informations professionnelles :
    Activité : Assistant aux utilisateurs
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Septembre 2007
    Messages : 1 896
    Par défaut
    Le fichier principal se nomme "Saisie-engagements.xls". Normalement les 2 classeurs doivent être ouverts; le classeur contenant la copie et le fichier principal. Le bouton se trouve dans le fichier principal.

    La ligne en surbrillance se trouve dans le fichier principal au niveau de l'UserForm UfBC1. "UfBC1.Show"

  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
    La ligne en surbrillance se trouve dans le fichier principal au niveau de l'UserForm UfBC1. "UfBC1.Show"
    Est-ce que tu peux publier le code avec la ligne en anomalie ?

  5. #5
    Membre éprouvé
    Homme Profil pro
    Assistant aux utilisateurs
    Inscrit en
    Septembre 2007
    Messages
    1 896
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 64
    Localisation : France

    Informations professionnelles :
    Activité : Assistant aux utilisateurs
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Septembre 2007
    Messages : 1 896
    Par défaut
    Voici le code en question. Il est dans la feuille "BC1" du fichier principal. Cette même feuille qui est copiée puis sauvegardée.
    J'ai commis une erreur dans mon message précédent, il ne sagit pas de l'UF mais bien de la feuille BC1

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    Private Sub Worksheet_Activate()
    UfBC1.Show
    End Sub

  6. #6
    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
    Quand tu exécutes :

    La feuille se copie dans un nouveau classeur et déclenche l'évènement "Worksheet_Activate()" qui cherche à afficher l'userform. Celui-ci ne se trouve pas dans le nouveau classeur, d'où l'erreur.

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

Discussions similaires

  1. problème avec un code
    Par abiraa dans le forum C++
    Réponses: 1
    Dernier message: 10/04/2007, 15h39
  2. Petit problème avec un code : besoin de votre aide :)
    Par loicdu4000 dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 01/09/2006, 18h02
  3. [MySQL] OU est le probléme avec ce code ??
    Par adlich dans le forum PHP & Base de données
    Réponses: 4
    Dernier message: 27/04/2006, 17h47
  4. [JOptionPane] Problème avec une boite de sauvegarde
    Par lanfeustdetroll dans le forum Agents de placement/Fenêtres
    Réponses: 15
    Dernier message: 03/08/2005, 17h33

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