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 :

Gestion des variables [XL-2007]


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Homme Profil pro
    Contrôleur de Gestion
    Inscrit en
    Mars 2011
    Messages
    316
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Contrôleur de Gestion
    Secteur : Enseignement

    Informations forums :
    Inscription : Mars 2011
    Messages : 316
    Par défaut Gestion des variables
    Bonjour,

    J'ai un souci avec mes variables voici le code que j'utilise

    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
    Private Sub Workbook_Open()
    Dim mois As Integer
    Dim base As String
    Dim nbase As String
    Dim an As String
    Dim ml As String
     
    an = Sheets("Commentaires").Range("I3").Value
    mois = Sheets("Commentaires").Range("J1").Value
    base = Sheets("Commentaires").Range("I1").Value
    nbase = Sheets("Commentaires").Range("I2").Value
     
        If Environ("UserName") = "adauchet" Then
        Sheets("Commentaires").Visible = xlSheetVisible
         Application.DisplayAlerts = False
         Workbooks.Open Filename:= _
            "D:\Mes Documents\00 - Réel\" & an & "\" & base & "\Formulaire Exploitation 0" & nbase & " CUMUL13.xls" _
            , ReadOnly:=1
            Application.DisplayAlerts = False
     
        Workbooks.Open Filename:= _
            "D:\Mes Documents\02 - Budget\" & an & "\" & base & "\T1\Masse Salariale\Gestion*des*heures*B*2013 " & base & ".xls" _
            , ReadOnly:=1
            Application.DisplayAlerts = False
     
        Workbooks.Open Filename:= _
            "D:\Mes Documents\00 - Réel\" & an & "\" & base & "\MS2013\Formulaire RH 0" & nbase & " CUMUL13.xls" _
            , ReadOnly:=1
            Application.DisplayAlerts = False
     
        Workbooks.Open Filename:= _
            "D:\Mes Documents\02 - Budget\" & an & "\" & base & "\T1\Masse Salariale\Maquette MS B " & an & " " & base & ".xls" _
            , ReadOnly:=1
            Application.DisplayAlerts = False
     
        Workbooks.Open Filename:= _
            "D:\Mes Documents\02 - Budget\" & an & "\" & base & "\T1\Volumes\Volumes Liaisons " & base & ".xls" _
            , ReadOnly:=1
            Application.DisplayAlerts = False
     
     Workbooks.Open Filename:= _
            "D:\Mes Documents\00 - Réel\" & an & "\" & base & "\" & mc & " - " & ml & "\Reporting\Pack Etats Comparatifs " & base & " " & mc & an & ".xlsx" _
            , ReadOnly:=1
            Application.DisplayAlerts = False
     
        Windows("Analyse MS Cumulé " & an & " 031.xlsm").Activate
        Sheets("Commentaires").Select
        Else
        Sheets("Commentaires").Visible = xlSheetHidden
        End If
    Application.DisplayAlerts = True
     
     
    End Sub
    Voici l'endroit où cela bloque :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    Workbooks.Open Filename:= _
            "D:\Mes Documents\00 - Réel\" & an & "\" & base & "\" & mc & " - " & ml & "\Reporting\Pack Etats Comparatifs " & base & " " & mc & an & ".xlsx" _
            , ReadOnly:=1
            Application.DisplayAlerts = False
    Voici le code de la variable mc
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    Sub mc()
    Dim mc As String
    Dim m As Integer
    Sheets("Commentaires").Select
        m = Range("J1")
    Select Case m
        Case Is <= 9
            mc = "0" & m
        Case Is > 9
            mc = m
    End Select
    End Sub
    et celui de la variable ml
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    Sub ml()
    Dim ml As String
    ml = Worksheets("Commentaires").Range("k2").Value
     
    End Sub

    voici le résultat du chemin

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    D:\Mes Documents\00 - Réel\2013\Chaulnes\09 - Septembre\Reporting\Pack Etats Comparatifs Chaulnes 092013.xlsx
    Merci de votre aide

  2. #2
    Inactif  
    Homme Profil pro
    Inscrit en
    Septembre 2012
    Messages
    1 733
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations forums :
    Inscription : Septembre 2012
    Messages : 1 733
    Par défaut
    Ton code n'appelle pas tes routines donc mc et ml ne valent rien.

    Tu devrais les appeler en tant que fonction au debut du code.

  3. #3
    Membre éclairé
    Homme Profil pro
    Contrôleur de Gestion
    Inscrit en
    Mars 2011
    Messages
    316
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Contrôleur de Gestion
    Secteur : Enseignement

    Informations forums :
    Inscription : Mars 2011
    Messages : 316
    Par défaut
    Bonjour EngueEngue,

    Je suis un peu perdu dans ta réponse.

    Car j'avais fait au début des Function au lieu de Sub

    Mais ça me bloquait

    pourrais tu m'aiguiller un peu plus

  4. #4
    Inactif  
    Homme Profil pro
    Inscrit en
    Septembre 2012
    Messages
    1 733
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations forums :
    Inscription : Septembre 2012
    Messages : 1 733
    Par défaut
    Essaie ce 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
    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
    Private Sub Workbook_Open()
    Dim mois As Integer
    Dim base As String
    Dim nbase As String
    Dim an As String
    Dim ml As String
     
    ml = Worksheets("Commentaires").Range("k2").Value
     
    Sheets("Commentaires").Select
        m = Range("J1")
    Select Case m
        Case Is <= 9
            mc = "0" & m
        Case Is > 9
            mc = m
    End Select
     
    an = Sheets("Commentaires").Range("I3").Value
    mois = Sheets("Commentaires").Range("J1").Value
    base = Sheets("Commentaires").Range("I1").Value
    nbase = Sheets("Commentaires").Range("I2").Value
     
        If Environ("UserName") = "adauchet" Then
        Sheets("Commentaires").Visible = xlSheetVisible
         Application.DisplayAlerts = False
         Workbooks.Open Filename:= _
            "D:\Mes Documents\00 - Réel\" & an & "\" & base & "\Formulaire Exploitation 0" & nbase & " CUMUL13.xls" _
            , ReadOnly:=1
            Application.DisplayAlerts = False
     
        Workbooks.Open Filename:= _
            "D:\Mes Documents\02 - Budget\" & an & "\" & base & "\T1\Masse Salariale\Gestion*des*heures*B*2013 " & base & ".xls" _
            , ReadOnly:=1
            Application.DisplayAlerts = False
     
        Workbooks.Open Filename:= _
            "D:\Mes Documents\00 - Réel\" & an & "\" & base & "\MS2013\Formulaire RH 0" & nbase & " CUMUL13.xls" _
            , ReadOnly:=1
            Application.DisplayAlerts = False
     
        Workbooks.Open Filename:= _
            "D:\Mes Documents\02 - Budget\" & an & "\" & base & "\T1\Masse Salariale\Maquette MS B " & an & " " & base & ".xls" _
            , ReadOnly:=1
            Application.DisplayAlerts = False
     
        Workbooks.Open Filename:= _
            "D:\Mes Documents\02 - Budget\" & an & "\" & base & "\T1\Volumes\Volumes Liaisons " & base & ".xls" _
            , ReadOnly:=1
            Application.DisplayAlerts = False
     
     Workbooks.Open Filename:= _
            "D:\Mes Documents\00 - Réel\" & an & "\" & base & "\" & mc & " - " & ml & "\Reporting\Pack Etats Comparatifs " & base & " " & mc & an & ".xlsx" _
            , ReadOnly:=1
            Application.DisplayAlerts = False
     
        Windows("Analyse MS Cumulé " & an & " 031.xlsm").Activate
        Sheets("Commentaires").Select
        Else
        Sheets("Commentaires").Visible = xlSheetHidden
        End If
    Application.DisplayAlerts = True
     
     
    End Sub

  5. #5
    Membre éclairé
    Homme Profil pro
    Contrôleur de Gestion
    Inscrit en
    Mars 2011
    Messages
    316
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Contrôleur de Gestion
    Secteur : Enseignement

    Informations forums :
    Inscription : Mars 2011
    Messages : 316
    Par défaut
    EngueEngue,

    Le chemin ci-dessous n'est pas reconnu (erreur execution1004)
    'D:Mes Documents\02 - Budget\2013\Chaulnes\T1\Masse Salariale\Gestion des heures B 2013 Chaulnes.xls' => message de la boite de dialogue VB

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    Workbooks.Open Filename:= _
            "D:\Mes Documents\02 - Budget\" & an & "\" & base & "\T1\Masse Salariale\Gestion des heures B " & an & " " & base & ".xls" _
           , ReadOnly:=1
           Application.DisplayAlerts = False
    et ci dessous copie du chemin par copier coller du répertoire :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    D:\Mes Documents\02 - Budget\2013\Chaulnes\T1\Masse Salariale\Gestion des heures B 2013 Chaulnes.xls
    J'ai même essayer en enlevant les espaces aussi bien sur le nom du fichier et dans le code

    Je ne vois pas l'erreur.

  6. #6
    Membre Expert
    Homme Profil pro
    retraité
    Inscrit en
    Mars 2013
    Messages
    885
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2013
    Messages : 885
    Par défaut gestion des variables
    bonjour,

    es-tu certain d'avoir retiré les * figurant dans le nom du fichier code de départ ?

    "Gestion*des*heures*B*2013"

    ou inversement.

    cordialement

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

Discussions similaires

  1. Réponses: 4
    Dernier message: 28/01/2008, 17h55
  2. Gestion des variables d'un document
    Par philben dans le forum Contribuez
    Réponses: 1
    Dernier message: 12/01/2008, 21h47
  3. Gestion des variables de session
    Par Yoplaboum dans le forum Struts 1
    Réponses: 8
    Dernier message: 09/11/2007, 16h07
  4. gestion des Variables Sessions
    Par Landolsi dans le forum ASP.NET
    Réponses: 8
    Dernier message: 08/02/2007, 13h30
  5. Gestion des variables - mémoire ?
    Par RIVOLLET dans le forum Langage
    Réponses: 4
    Dernier message: 26/10/2002, 12h44

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