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 :

Activer un classeur ouvert sans connaitre son nom


Sujet :

Macros et VBA Excel

  1. #1
    Membre à l'essai
    Homme Profil pro
    Inscrit en
    Avril 2012
    Messages
    27
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Avril 2012
    Messages : 27
    Points : 23
    Points
    23
    Par défaut Activer un classeur ouvert sans connaitre son nom
    Bonjour,

    J´ai un problème très similaire à celui-ci
    sauf que je n´utilise pas Workbooks.Open mais Workbooks.OpenText :

    Mon but :
    A partir d´un fichier excel source contenant le code VB : quand la personne double clic sur une case
    -Convertir un fichier texte (choisi par l´utilisateur) (plus précisément un fichier .tlv mais ca marche pareil) en tableur excel
    -Apporter des modifications à ce nouveau tableur excel.

    Voici mon code :

    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
    Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
     
    Dim vFileName As Variant
    Dim WkbS As Workbook
    Dim WkbC As Workbook
     
    Set WkbS = ThisWorkbook
     
    vFileName = Application.GetOpenFilename
     
    If vFileName = False Then
            MsgBox "´Cancelled"
            End
        Else
            Set WkbC = Workbooks.OpenText Filename:=vFileName, _
            Origin:=xlMSDOS, StartRow:=1, DataType:=xlDelimited, _
            TextQualifier:=xlDoubleQuote, ConsecutiveDelimiter:=False, _
            Tab:=True, Semicolon:=False, Comma:=False, Space:=False, Other:=False, _
            TrailingMinusNumbers:=True
     
            Windows(WkbC).Activate
     
            Columns("C:F").ColumnWidth = 30
     
     
    End If
    End Sub
    Au départ, j´ai fais le code uniquement pour la conversion. Dans ce cas, je n´avais pas besoin de basculer entre les fenêtres et mon code fonctionnait.

    Seulement en rajoutant « Set WkbC = » en début de ligne 15, la fonction Workbooks.OpenText ne fonctionne plus.

    Le message d´erreur est
    Erwartet : Anweisungsende (traduction en anglais : Expected: end of statement ) et l´argument Filename se surligne.
    Oui désolé je bosse en Allemagne en ce moment lol.

    Je précise que je suis débutant en VB.
    Je vous remercie beaucoup pour votre aide qui j´espère m´aiderai pour mon travail.

  2. #2
    Expert éminent sénior


    Profil pro
    Inscrit en
    Juin 2003
    Messages
    14 008
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 14 008
    Points : 20 040
    Points
    20 040
    Par défaut
    bonjour,

    opentext ne renvoit pas un classeur tu peu faire :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     Workbooks.OpenText Filename:=vFileName, _
            Origin:=xlMSDOS, StartRow:=1, DataType:=xlDelimited, _
            TextQualifier:=xlDoubleQuote, ConsecutiveDelimiter:=False, _
            Tab:=True, Semicolon:=False, Comma:=False, Space:=False, Other:=False, _
            TrailingMinusNumbers:=True
    set WkbC = ActiveWorkbook
    et pas besoin d'activer ton classeur pour y accéder :


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
     wkbc.sheets(1).Columns("C:F").ColumnWidth = 30

  3. #3
    Membre à l'essai
    Homme Profil pro
    Inscrit en
    Avril 2012
    Messages
    27
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Avril 2012
    Messages : 27
    Points : 23
    Points
    23
    Par défaut
    Super merci pour la réponse rapide j'essaye ça demain au boulot mais ça correspond tout à fait à mon attente.


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

Discussions similaires

  1. activer un classeur ouvert sans connaitre son nom
    Par touriste01 dans le forum Macros et VBA Excel
    Réponses: 17
    Dernier message: 24/02/2011, 10h05
  2. supprimer un raccourci sans connaitre son nom !
    Par MIKKA dans le forum Windows
    Réponses: 4
    Dernier message: 26/02/2009, 18h01
  3. Instancier une classe sans connaitre son nom
    Par Molkobain dans le forum Langage
    Réponses: 8
    Dernier message: 16/02/2009, 15h49
  4. modifier une propriété sans connaitre son nom
    Par cyberchand dans le forum C#
    Réponses: 2
    Dernier message: 17/04/2007, 17h17
  5. Comment ouvrir un fichier sans connaitre son nom
    Par APoLLoN1234 dans le forum C++
    Réponses: 8
    Dernier message: 10/09/2006, 19h04

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