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 :

Récupération d'info dans cellule [Toutes versions]


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre actif
    Homme Profil pro
    Inscrit en
    Octobre 2012
    Messages
    69
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Loir et Cher (Centre)

    Informations forums :
    Inscription : Octobre 2012
    Messages : 69
    Par défaut Récupération d'info dans cellule
    Bonjour,

    Comment et quoi ajouter a ce code, afin qu'il regarde dans la cellule "B4" de la feuil1 ou il y ai mentionné "01/10/2012 fin : 31/10/2012"
    Pour qu'il enregistre le fichier pour le mois de Octobre (par la suite automatiquement pour les autres mois) :

    "DépensesFonct_2012-10" pour le "nom_fichier_1"
    "DépensesInvest_2012-10" pour le "nom_fichier_2"
    "Recettes_2012-10" pour le "nom_fichier_3"

    Je voudrais aussi que l'on puisse rentrer les liens pour les chemins directement dans la feuille excel afin que la macro récupère ces liens sans que l'on soit obligé de bidouiller la macro a chaque fois que l'informatique nous change l'arborescence.... Aujourd'hui j'ai ça :
    chemin_1 = "E:\Dir_Depense-EPF\"
    chemin_2 = "E:\Dir_Depense-EPI\"
    chemin_3 = "E:\Dir_Recette-EPF\"


    Comment peut on faire ?

    Voici le code que j'ai déjà :



    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
        temps = Time()
        heure = Split(temps, ":")
        heure = heure(0) & "H" & heure(1)
        temps = Date
        date_modif = Split(Date, "/")
        date_modif = date_modif(2) & "-" & date_modif(1)
     
        Dim Fichier As String
        Dim EnregOK As Boolean
        EnregOK = True
        chemin_1 = "E:\Dir_Depense-EPF\"
        chemin_2 = "E:\Dir_Depense-EPI\"
        chemin_3 = "E:\Dir_Recette-EPF\"
        nom_fichier_1 = "DépensesFonct_" & date_modif
        nom_fichier_2 = "DépensesInvest_" & date_modif
        nom_fichier_3 = "Recettes_" & date_modif
     
        If Range("B2") = "Dépense" Then
            If Range("B7") = "EPF" Then
                ChDir chemin_1
                    ActiveWorkbook.SaveAs Filename:=chemin_1 & nom_fichier_1 & ".xls", FileFormat _
                        :=xlOpenXMLWorkbook, CreateBackup:=False
                Fichier = nom_fichier_1
            ElseIf Range("B7") = "EPI" Then
                ChDir chemin_2
                    ActiveWorkbook.SaveAs Filename:=chemin_2 & nom_fichier_2 & ".xls", FileFormat _
                        :=xlOpenXMLWorkbook, CreateBackup:=False
                Fichier = nom_fichier_2
            Else
                EnregOK = False
                MsgBox " Ce type d'AP/EPCP n'est pas prévu dans un poste de Dépense."
            End If
        ElseIf Range("B2") = "Recette" Then
            If Range("B7") = "EPF" Then
                ChDir chemin_3
                    ActiveWorkbook.SaveAs Filename:=chemin_3 & nom_fichier_3 & ".xls", FileFormat _
                        :=xlOpenXMLWorkbook, CreateBackup:=False
                Fichier = nom_fichier_3
            Else
                EnregOK = False
                MsgBox " Ce type d'AP/EPCP n'est pas prévu dans un poste de Recette."
            End If
        Else
            EnregOK = False
            MsgBox " Aucun traitement prévu pour ce poste."
        End If
        If EnregOK Then
            MsgBox "Enregistrement sous " & Fichier
        Else
            MsgBox "Pas d'enregistrement."
        End If

    Merci

    @+ Arnaud41

  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,

    Pour le nom des fichiers :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
        date_modif = Split([Feuil1!B4], "/")
        date_modif = date_modif(4) & "-" & date_modif(1)
    Pour le premier dossier :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
        Set FSO = CreateObject("scripting.fileSystemObject")
        chemin_1 = Application.GetOpenFilename("Classeurss (*.xls*), *.xls*", Title:="choisissez un classeur dans le dossier dan le dossier voulu")
        Set Doss = FSO.getfile(chemin_1)
        chemin_1 = Doss.ParentFolder.Path
    Ne pas répéter la première ligne pour les autres chemins.

  3. #3
    Membre actif
    Homme Profil pro
    Inscrit en
    Octobre 2012
    Messages
    69
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Loir et Cher (Centre)

    Informations forums :
    Inscription : Octobre 2012
    Messages : 69
    Par défaut
    Salut,

    Merci a "Daniel.C"

    Bon votre premier code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
        date_modif = Split([Feuil1!B4], "/")
        date_modif = date_modif(4) & "-" & date_modif(1)
    Fonctionne a merveille..

    Pour le deuxième je comprends pas trop, moi ce que je voudrais c'est sur la feuille dont l'onglet s'appelle "index" ou j'ai mon bouton de macro, mette un chemin reseau1 dans la cellule "B20", chemin reseau2 dans la cellule "B21", chemin reseau3 dans la cellule "B23", afin que la macro reprendre ces infos pour les utiliser sans que l'on rentre dans l'éditeur VBA, pour changer les chemins, s'ils changent.

    Pour mes chemins réseaux en ce moment j'ai ça :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
        chemin_1 = "E:\Dir_Depense-EPF\"
        chemin_2 = "E:\Dir_Depense-EPI\"
        chemin_3 = "E:\Dir_Recette-EPF\"
    Mais chez nous les informaticiens change les chemins les lettres de lecteurs etc....

    @+ Arnaud

  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
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    chemin_1 = [index!B20]
        chemin_2 = [index!B21]
        chemin_3 = [index!B23]

  5. #5
    Membre actif
    Homme Profil pro
    Inscrit en
    Octobre 2012
    Messages
    69
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Loir et Cher (Centre)

    Informations forums :
    Inscription : Octobre 2012
    Messages : 69
    Par défaut
    Salut,

    Merci "Daniel.C"

    C'est exactement ce qu'il me fallait....

    Merci encore

    @+ Arnaud41

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

Discussions similaires

  1. Récupération d'infos dans un AlertDialog
    Par ciolvic dans le forum Android
    Réponses: 2
    Dernier message: 29/11/2012, 15h50
  2. Récupération d'info dans un fichier txt + traitements
    Par Bhaalou dans le forum Shell et commandes GNU
    Réponses: 9
    Dernier message: 12/04/2012, 10h24
  3. [WD-2003] Modification d'un modèle .DOT pour récupération d'infos dans un .TXT
    Par thefutureisnow dans le forum VBA Word
    Réponses: 8
    Dernier message: 08/02/2011, 10h13
  4. Récupérations d'infoS dans un fichier texte
    Par remsrock dans le forum C#
    Réponses: 8
    Dernier message: 01/07/2008, 18h38
  5. Réponses: 14
    Dernier message: 17/11/2005, 14h36

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