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 :

[VBA-E] fermeture + ouverture


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Tan
    Tan est déconnecté
    Membre confirmé
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    168
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2004
    Messages : 168
    Par défaut
    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
    Private Sub Quitter_Click() 
    Dim stRep As String 
    dim wb as Excel.workbook
         Sheets("devis").Copy 
         ' 
             stRep = ThisWorkbook.Path & "\Devis\" 
         For Each s In ActiveSheet.Shapes 
         If s.Type = msoFormControl Then 
           s.Delete 
         End If 
    Next 
         ActiveWorkbook.SaveAs stRep & Replace(Range("G4"), " ", "-") & Format(Now, "-ddmmyy") 
         Set wb = ActiveWorkbook
         ThisWorkbook.Close savechanges = False 
    Unload Me 
    End Sub
    Je suis de tout coeur avec bbil qui insiste mais qui a raison, quand tu fais une copie (sans paramêtre) tu mets la feuilles dans un nouveau classeur et celui-ci du coup est ouvert (et même actif).

    Ensuite, tu utilises ActiveWorkBook pour manipuler le nouveau classeur (où tu as seulement l'onglet que tu veux), donc si tu veux le garder ouvert, pas besoin de le fermer et de le réouvrir (car saveas ne ferme pas), donc tu as juste à fermer ton ancien classeur.


    je suis d'accord avec toi mais comment l'appeler , si je met juste workbooks ("nom-date)show , ca serait corecte alors ?
    Pour l'utiliser il y a plein de manière, soit tu rajoutes cette ligne et ensuite tu utilises wb pour ce que tu veux faire(ce que j'ai fait dans le code)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Set wb = ActiveWorkbook
    Tu peux aussi enregistrer dans une variable que le nom avec ActiveWorkBook.name et ensuite utiliser cette variable avec workbooks(maVaraible) soit, si le classeur reste active tout au long de ton traitement, tu peux rester sur activeWorkbook.

    Enfin bref il y a plein de méthodes, je t'en ai écrit une.

    Note: workbooks ("nom-date).show => show n'est pas une méthode de workbook, c'est peut être visible que tu voulais, mais il est déjà par défaut....

    Et félicitation à bbil pour ne pas avoir abondonner

  2. #2
    Membre confirmé
    Inscrit en
    Décembre 2005
    Messages
    164
    Détails du profil
    Informations forums :
    Inscription : Décembre 2005
    Messages : 164
    Par défaut
    un grand merci a vous et surtout pour votre patience
    merci encore

    j'essaie et vous tient au courant

+ Répondre à la discussion
Cette discussion est résolue.
Page 2 sur 2 PremièrePremière 12

Discussions similaires

  1. [XL-2010] Ouverture .csv depuis script VBA et fermeture après de ce .csv sans enregistrer
    Par kythi dans le forum Macros et VBA Excel
    Réponses: 7
    Dernier message: 28/06/2013, 12h44
  2. [VBA] Condition d'ouverture d'état
    Par Virgile59 dans le forum Access
    Réponses: 1
    Dernier message: 14/10/2005, 11h26
  3. Fermeture/Ouverture d'application avec VC++
    Par Philippe299 dans le forum MFC
    Réponses: 2
    Dernier message: 11/08/2005, 21h17
  4. [VBA-E] Macro ouverture fichier déja ouvert
    Par bhaal76 dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 18/12/2002, 14h30
  5. [VBA-E] Evenement ouverture de fichier
    Par gjeff dans le forum Macros et VBA Excel
    Réponses: 5
    Dernier message: 13/12/2002, 09h42

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