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 :

Comment ouvrir un second fichier excel via VBA


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Nouveau candidat au Club
    Homme Profil pro
    amateur
    Inscrit en
    Juillet 2023
    Messages
    1
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : amateur

    Informations forums :
    Inscription : Juillet 2023
    Messages : 1
    Par défaut Comment ouvrir un second fichier excel via VBA
    Bonjour

    je vous explique la situation

    j'ai une base de donné sous Excel et je dois permettre à mes équipes d'y accéder sans avoir accès aux données de base.

    pour la gérer, j'utilise des userforms (l'accès aux onglets est bien sur "bloqué" afin d'éviter que quelqu'un puisse y accéder)

    dans l'un des userforms, je permets la création d'un fichier excel qui récupère des données saisies dans le userform. dès qu'on quitte le userform, le fichier excel est sauvegardé et fermé

    Jusque là, rien de bien particulier.

    Voilà ce que je voudrais :

    une fois que mon fichier excel créé via le userform est enregistré, je voudrais que l'utilisateur puisse y acceder sans quitter le userform.

    mais impossible de le faire... je n'y arrive pas !

    je ne sais même pas si c'est possible car j'ai essayé pendant que je suis sur le userform d'ouvrir manuellement un autre fichier excel, mais rien ne s'ouvre tant que je n'ai pas quitter le userform

    quelqu'un peut m'aider ?

    merci d'avance

  2. #2
    Membre Expert
    Inscrit en
    Décembre 2002
    Messages
    993
    Détails du profil
    Informations forums :
    Inscription : Décembre 2002
    Messages : 993
    Par défaut
    Bonjour, il est possible d'ouvrir un classeur excel à partir du userform, mais ensuite aucune interaction n'est possible avec le classeur tant que le userform est ouvert, celui-ci conserve le focus.
    Tu peux tester par toi-même en affectant cette macro à un bouton.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    Private Sub CommandButton1_Click()
        Dim cheminFichier As String
        cheminFichier = "chemin_vers_le_fichier\mon_fichier_cree.xlsx" ' Remplacez ceci par le chemin complet de votre fichier créé
     
        On Error Resume Next
        Workbooks.Open cheminFichier
        If Err.Number <> 0 Then
            MsgBox "Une erreur s'est produite lors de l'ouverture du fichier.", vbExclamation
        End If
        On Error GoTo 0
    End Sub

  3. #3
    Membre Expert
    Profil pro
    Inscrit en
    Septembre 2010
    Messages
    1 545
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France

    Informations forums :
    Inscription : Septembre 2010
    Messages : 1 545
    Par défaut
    on doit pouvoir en créant, ouvrant une nouvelle session Excel, de la même façon qu'on peut ouvrir un word

    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
    Sub OvrirClasseurDansNouvelleInstanceExcel()
    'par: https://excel-malin.com
     
        On Error GoTo Erreur
     
        'définitions des variables
        Dim MonClasseur As String
        Dim objExcel As Excel.Application
        Set objExcel = CreateObject("Excel.Application")
     
        'définition du Classeur à ouvrir
        MonClasseur = "C:\Test\ClasseurTest.xlsm"
     
        'ouverture du Classeur dans une nouvelle instance d'Excel
        objExcel.Workbooks.Open Filename:=MonClasseur
        objExcel.Visible = True
     
    Exit Sub
    Erreur:
        MsgBox "Une erreur est survenue..."<span data-mce-type="bookmark" style="display: inline-block; width: 0px; overflow: hidden; line-height: 0;" class="mce_SELRES_start"></span>
    End Sub

  4. #4
    Expert confirmé

    Homme Profil pro
    Curieux
    Inscrit en
    Juillet 2012
    Messages
    5 169
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Curieux
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Juillet 2012
    Messages : 5 169
    Billets dans le blog
    5
    Par défaut
    Bonjour,

    par défaut un userform est modal, c'est à dire qu'il fige l'application tant qu'on ne le ferme pas (entre autre)

    ils suffit de le rendre non modal, et on peut ouvrir d'autres classeurs, travailler dessus, avec le userform ouvert


Discussions similaires

  1. [XL-365] Ouvrir / fermer un fichier Excel en VBA sur le cloud
    Par retraite83 dans le forum Macros et VBA Excel
    Réponses: 11
    Dernier message: 12/09/2020, 11h45
  2. [AC-2003] Comment supprimer totalement un fichier Excel via Access ?
    Par CIRE3 dans le forum VBA Access
    Réponses: 4
    Dernier message: 25/07/2013, 14h06
  3. [WD-2007] modification de fichier excel via VBA Word
    Par astroflo dans le forum VBA Word
    Réponses: 1
    Dernier message: 21/03/2012, 10h57
  4. Génerer un fichier excel via VBA access
    Par kedmard dans le forum VBA Access
    Réponses: 10
    Dernier message: 20/03/2012, 12h01
  5. Enregistrement fichier excel via VBA
    Par vwtroudy dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 07/07/2009, 09h28

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