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 :

Implémenter des fichiers dans un dossier


Sujet :

Macros et VBA Excel

  1. #1
    Membre à l'essai
    Homme Profil pro
    Ingénieur commercial
    Inscrit en
    Juin 2019
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 27
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Ingénieur commercial
    Secteur : Finance

    Informations forums :
    Inscription : Juin 2019
    Messages : 4
    Par défaut Implémenter des fichiers dans un dossier
    Bonjour à tous et merci par avance de m'aider dans mes recherches,

    Je vous explique mon problème :
    Un utilisateur rentre le nom d'un dossier client qu'il souhaite créer, ce dossier va être positionné suivant ce chemin :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    dossier_client = InputBox("Veuillez rentrer le nom d'un client", "On-boarding Assistant")
    chemin_du_dossier = "d:\Profiles\Desktop\gmarry\Desktop\On_boarding\"
    dossier = chemin_du_dossier & "\" & dossier_client & "\"
    MkDir (dossier)
    Je crée ensuite 10 sous-dossiers qui sont commun à chaque client. Ces 10 sous-dossiers sont la racine à partir de laquelle je souhaite travailler et se situent à la même profondeur (niveau cheminement). Ex avec le sous-dossier "Administratif" :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    sous_dossier5 = dossier & "\" & "Administratif" & "\"
    MkDir (sous_dossier5)
    Dans l'idée je souhaiterais cliquer sur un bouton "Parcourir" dans mon Excel et qui me permettrait d'aller sélectionner n'importe quel fichier de mon ordinateur et de le copier-coller dans ce sous-dossier "Administratif".
    Mais je ne sais pas vraiment comment m'y prendre.

    Toutes réponses ou ébauches ou mêmes conseils sont les bienvenues

  2. #2
    Expert éminent Avatar de Menhir
    Homme Profil pro
    Ingénieur
    Inscrit en
    Juin 2007
    Messages
    16 037
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2007
    Messages : 16 037
    Par défaut
    Citation Envoyé par gigi13800 Voir le message
    aller sélectionner n'importe quel fichier de mon ordinateur
    Méthode GetOpenFilename de Application.
    https://docs.microsoft.com/fr-fr/off...etopenfilename

    le copier-coller dans ce sous-dossier "Administratif".
    Instruction FileCopy : https://docs.microsoft.com/fr-fr/off...copy-statement

  3. #3
    Expert confirmé
    Avatar de MarcelG
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juillet 2009
    Messages
    3 449
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 67
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2009
    Messages : 3 449
    Billets dans le blog
    7
    Par défaut
    Salut Gigi et salut Menhir,

    Menhir n'a pas reporté de code. Je ne le ferai donc pas, du moins dans l'immédiat

    Oui, il faut utiliser les boîtes de dialogue (Patrick m'a mis le pied à l'étrier, je débute à ce sujet)
    Au demeurant j'avais une autre piste, que j'ai testée.

    Utiliser l'objet FilePicker (en abrégé) pour appliquer la méthode CopyFile sur l'item choisi.
    Le fichier de destination pourrait être défini en fonction de ce dernier.

    En fin de discussion, j'aurai une question quant à la déclaration de variable affecté à l'item.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Dim litemchoice As ? 
    Set litemchoice = ..... .Select..
    Je ne vois pas comment déclarer litemchoice.

  4. #4
    Inactif  

    Homme Profil pro
    cuisiniste
    Inscrit en
    Avril 2009
    Messages
    15 374
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : cuisiniste
    Secteur : Bâtiment

    Informations forums :
    Inscription : Avril 2009
    Messages : 15 374
    Billets dans le blog
    8
    Par défaut re
    bonjour gigi

    j'avoue ne pas bien comprendre ton énoncé

    pourrais tu nous faire un tableau (en indentant les chemins dans les cellules) représentatif de l'arborescence que tu souhaite créer
    du genre

    maitre
    client1
    sub dossier1administratif
    sub dossier 2
    client2
    administratif
    etc...etc....
    mes fichiers dans les contributions:
    mail avec CDO en vba et mail avec CDO en vbs dans un HTA
    survol des bouton dans userform
    prendre un cliché d'un range

    si ton problème est résolu n'oublie pas de pointer : : ça peut servir aux autres
    et n'oublie pas de voter

  5. #5
    Membre à l'essai
    Homme Profil pro
    Ingénieur commercial
    Inscrit en
    Juin 2019
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 27
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Ingénieur commercial
    Secteur : Finance

    Informations forums :
    Inscription : Juin 2019
    Messages : 4
    Par défaut
    pourrais tu nous faire un tableau (en indentant les chemins dans les cellules) représentatif de l'arborescence que tu souhaite créer
    du genre

    Classeur1.xlsx

    je vous joins un excel vous montrant l'arborescence de mes dossiers.
    En profondeur : Client x --> Sous-dossier racine (10 : "Administratif", "Personne morale", etc...) --> Fichier que je souhaite sélectionner dans mon PC

    En théorie je voudrais créer 10 boutons, chacun rattaché à un sous-dossier racine. Lorsque je clique sur un de ces Boutons, je parcours mon PC, je sélectionne un fichier, et il vient se coller dans le sous-dossier raccordé au bouton correspondant.

    je ne sais pas si cela est possible... et si vous voyez un peu mieux mon problème.

  6. #6
    Membre à l'essai
    Homme Profil pro
    Ingénieur commercial
    Inscrit en
    Juin 2019
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 27
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Ingénieur commercial
    Secteur : Finance

    Informations forums :
    Inscription : Juin 2019
    Messages : 4
    Par défaut
    Merci Menhir pour ta réponse, je vais essayer de creuser dans ce sens

  7. #7
    Membre à l'essai
    Homme Profil pro
    Ingénieur commercial
    Inscrit en
    Juin 2019
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 27
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Ingénieur commercial
    Secteur : Finance

    Informations forums :
    Inscription : Juin 2019
    Messages : 4
    Par défaut
    MarcelG, la fonction FilePicker a-t-elle besoin de prendre comme argument le nom exact du fichier que l'on souhaite choisir ?
    En toute honnêteté, je débute sur VBA et il y a beaucoup de fonctions dont j'ignore encore l'existence

  8. #8
    Inactif  

    Homme Profil pro
    cuisiniste
    Inscrit en
    Avril 2009
    Messages
    15 374
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : cuisiniste
    Secteur : Bâtiment

    Informations forums :
    Inscription : Avril 2009
    Messages : 15 374
    Billets dans le blog
    8
    Par défaut re
    re
    selon ton tableau dans ton fichier join
    voici avec test dir et MKDIR la construction de ton arborescence

    comme tu pourra le constater je t'ai préparer le travail au cas ou tu voudrais descendre jusqu'en colonne 3 pour des sub sub sub dossiers
    apres tu parle de construction(creation de bouton
    je pense que si on mettait cela dans un tableau structurer avec l'évènement sélections_change ou rightclick sur cellule o avec folowhyperlink on aurait ce que tu souhaite
    certe ca fait moins de chichi (interface minimale) quoi que libre a toi de mettre des couleurs dans les cellules même du tableau structuré si tu prendra ce chemin la
    en tout ca se serait fonctionnel

    creation de tes dossier
    change la racine base a ton contexte
    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
    'Creation avec DIR et MKDIR
    Private Sub CommandButton1_Click()
        Dim I&, cel As Range, cheminsub$, sheminsubsub$, racine$
        ' creation du dossier maitre seulement si il n'existe pas
        racine = Environ("userprofile") & "\DeskTop\on board"
        If Dir(racine, vbDirectory) = "" Then MkDir (racine)
        'creation des sous dossiers du maitre colonne "A"
        finA = Sheets(1).Cells(Rows.Count, 1).End(xlUp).Row
        With Sheets(1)
            For I = 1 To finA
                If .Cells(I, 1) <> "" Then
                    cheminsub = (racine) & "\" & Cells(I, 1).Text
                    If Dir(cheminsub, vbDirectory) = "" Then MkDir cheminsub
                End If
            Next
     
            'creation des sous sous dossiers du client colonne "B"
            finb = Sheets(1).Cells(Rows.Count, 2).End(xlUp).Row
            For I = 1 To finb
                If .Cells(I, 2) <> "" Then
                    Set cel = .Range(.Cells(I, 1), .Cells(1, 1)).Find("*", lookat:=xlWhole, SearchDirection:=xlPrevious)
                    cheminsubsub = racine & "\" & cel.Text & "\" & Cells(I, 2).Text
                    'MsgBox .Cells(i, 2).Address & cel.Address
                    If Dir(cheminsubsub, vbDirectory) = "" Then MkDir cheminsubsub
                End If
            Next
            'creation des sous sous sous dossiers du sous  dossier du dossier client  colonne "C"
            finc = Sheets(1).Cells(Rows.Count, 2).End(xlUp).Row
            For I = 1 To finc
                If .Cells(I, 3) <> "" Then
                    Set cel = .Range(.Cells(I, 2), .Cells(1, 2)).Find("*", lookat:=xlWhole, SearchDirection:=xlPrevious)
                    Set cel1 = .Range(.Cells(I, 1), .Cells(1, 1)).Find("*", lookat:=xlWhole, SearchDirection:=xlPrevious)
                    MsgBox cel1 & "\" & cel & "\" & .Cells(I, 3)
                End If
            Next
     
     
        End With
    End Sub
    mes fichiers dans les contributions:
    mail avec CDO en vba et mail avec CDO en vbs dans un HTA
    survol des bouton dans userform
    prendre un cliché d'un range

    si ton problème est résolu n'oublie pas de pointer : : ça peut servir aux autres
    et n'oublie pas de voter

  9. #9
    Inactif  

    Homme Profil pro
    cuisiniste
    Inscrit en
    Avril 2009
    Messages
    15 374
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : cuisiniste
    Secteur : Bâtiment

    Informations forums :
    Inscription : Avril 2009
    Messages : 15 374
    Billets dans le blog
    8
    Par défaut re
    re
    sinon pour ta construction de l'arborescence avec file sytem object

    ici je ne ferait qu'une seul boucle pour construire tout les chemins
    et une petite dernier pour construire chaque dossier dans son parent

    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
    'creation avec FSO
    Private Sub CommandButton2_Click()
    Dim Racine, fin&, I&, X&, cel1, cel2, chemin_complet$, chem$, FsO, tbl
    ' creation du dossier maitre seulement si il n'existe pas
        Racine = Environ("userprofile") & "\DeskTop\on board"
        'ici on va globaliser sanchant qu'avec fso on créé l'arborescence d'un dossier en un coup !!!!
        With Sheets(1)
            'derniere ligne globale plage(qu'importe la colonne  de la plage)
            fin = .Range("A1:c" & Rows.Count).Find("*", lookat:=xlWhole, SearchDirection:=xlPrevious).Row
            For I = 1 To fin
                If Cells(I, 3) <> "" Then
                    Set cel2 = .Range(.Cells(I, 2), .Cells(1, 2)).Find("*", lookat:=xlWhole, SearchDirection:=xlPrevious)
                    Set cel1 = .Range(cel2.Offset(, -1), .Cells(1, 1)).Find("*", lookat:=xlWhole, SearchDirection:=xlPrevious)
                Else
                    If Cells(I, 2) <> "" Then
                        Set cel2 = .Cells(I, 2)
                        Set cel1 = .Range(cel2.Offset(, -1), .Cells(1, 1)).Find("*", lookat:=xlWhole, SearchDirection:=xlPrevious)
                    End If
                End If
                chemin_complet = cel1 & "\" & cel2 & "\" & Cells(I, 3)
                If Not chemin_complet Like "\\" And Not chemin_complet = "" Then
                    chemin_complet = Racine & "\" & Left(chemin_complet, Len(chemin_complet) - 1)
                    Debug.Print chemin_complet
                    Set FsO = CreateObject("Scripting.FileSystemObject")    'instanciation de l'object FSO
                    tbl = Split(chemin_complet, "\")
                    chem = ""
                    For X = 0 To UBound(tbl)
                        chem = chem & tbl(X) & "\"
                        If Not FsO.FolderExists(chem) Then FsO.createfolder (chem)
                    Next
                End If
            Next
        End With
    End Sub
    Sub createfolder(chemin)
    End Sub
    après pour être honnête et c'est ma faute, je t'ai mal aiguillé quand a la forme de ton tableau
    on aurait pu faire plus simple en mécanique pour faire 100 fois plus compliqué en terme d'arborescence
    mes fichiers dans les contributions:
    mail avec CDO en vba et mail avec CDO en vbs dans un HTA
    survol des bouton dans userform
    prendre un cliché d'un range

    si ton problème est résolu n'oublie pas de pointer : : ça peut servir aux autres
    et n'oublie pas de voter

  10. #10
    Expert confirmé
    Avatar de MarcelG
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juillet 2009
    Messages
    3 449
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 67
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2009
    Messages : 3 449
    Billets dans le blog
    7
    Par défaut
    Salut Gigi, Salut Patrick,

    Ci-dessous, le code que j'avais envisagé.

    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
    Option Explicit
     
    Sub AfficherFichier()
     
    Dim lobjetFile As New Scripting.FileSystemObject
     
    With Application.FileDialog(msoFileDialogFilePicker)
          .Title = "Fichier à copier"
          .ButtonName = "Copie"
          If .Show = True Then
                lobjetFile.CopyFile .SelectedItems(1), "chemin destination de la copie avec nom du fichier et extension"
          End If
    End With
     
    End Sub
    1 question, Patrick:
    Si je déclare la variable
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    Set litemchoice = .SelectedItems(1)
    Comment dois-je déclarer cette variable?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Dim litemchoice As ?????????????????????
    J'ai recherché, peut-être mal, mais je n'ai pas trouvé de réponse à cette question.

  11. #11
    Inactif  

    Homme Profil pro
    cuisiniste
    Inscrit en
    Avril 2009
    Messages
    15 374
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : cuisiniste
    Secteur : Bâtiment

    Informations forums :
    Inscription : Avril 2009
    Messages : 15 374
    Billets dans le blog
    8
    Par défaut re
    re
    allons Marcel

    quand tu instancie une variable avec l'instruction "Set" tu instancie quoi

    tout simplement un object donc As ......

    par contre je me souviens plus les filepiker mais je ne suis pas sur les items sélectionnés soit des object je dis ca car je ne sais plus j'ai viré depuis longtemps tout les filedialog de mes app au profit de getopenfilename et getsaveasfilename donc affaire a suivre

    en tout cas pour "set" c'est soit un type d'object connu( As range,As control, voir les As xlconstante ou As (constante vbreturn) ) soit As object( c'est du latebinding)

    si tu a un doute laisse le en variant

    d'ailleurs!!!! dans ton exemple " .SelectedItems(1)" ne peut en aucun cas etre un object et a mon avis c'est un string
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    Option Explicit
     
    Sub AfficherFichier()
     
    Dim lobjetFile As New Scripting.FileSystemObject
     
    With Application.FileDialog(msoFileDialogFilePicker)
          .Title = "Fichier à copier"
          .ButtonName = "Copie"
          If .Show = True Then
                lobjetFile.CopyFile .SelectedItems(1), "chemin destination de la copie avec nom du fichier et extension"
          End If
    End With
    un petit truc pour t'aider a saisir la nuance

    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
    Option Explicit
     
    Sub AfficherFichier()
     
    'Dim lobjetFile As New Scripting.FileSystemObject
     
    With Application.FileDialog(msoFileDialogFilePicker)
          .Title = "Fichier à copier"
          .ButtonName = "Copie"
          If .Show = True Then
     
            MsgBox TypeName(.SelectedItems(1))
            MsgBox TypeName(.SelectedItems)
            MsgBox .SelectedItems.Count
                'lobjetFile.CopyFile .SelectedItems(1), "chemin destination de la copie avec nom du fichier et extension"
          End If
    End With
    End Sub
    mes fichiers dans les contributions:
    mail avec CDO en vba et mail avec CDO en vbs dans un HTA
    survol des bouton dans userform
    prendre un cliché d'un range

    si ton problème est résolu n'oublie pas de pointer : : ça peut servir aux autres
    et n'oublie pas de voter

  12. #12
    Expert confirmé
    Avatar de MarcelG
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juillet 2009
    Messages
    3 449
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 67
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2009
    Messages : 3 449
    Billets dans le blog
    7
    Par défaut
    Justement!

    Si j'écris

    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
    Option Explicit
     
    Sub AfficherFichier()
     
    Dim lobjetFile As New Scripting.FileSystemObject
    Dim litemchoice As Object
     
    With Application.FileDialog(msoFileDialogFilePicker)
          .Title = "Fichier à copier"
          .ButtonName = "Copie"
          If .Show = True Then
                Set litemchoice = .SelectedItems(1)
                lobjetFile.CopyFile .SelectedItems(1), "chemin destination de la copie avec nom du fichier et extension"
          End If
    End With
    J'obtiens l'anomalie Incompatibilité de type
    Et comme sélection répondant à cette anomalie, est surligné le mot
    au sein de la déclaration
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Set litemchoice = .SelectedItems(1)
    Si je déclare cette variable en Variant, le même mot clé est mis en évidence avec cette nouvelle anomalie "Objet requis"
    Pour ma part, la variable est un objet donc sa déclaration doit être précédée de l'instruction "Set"

    Je dois quitter.
    Je te propose de reprendre cette - intéressante - discussion demain.

    Bonne soirée à toi, Bonne soirée au Forum.





    End Sub

  13. #13
    Inactif  

    Homme Profil pro
    cuisiniste
    Inscrit en
    Avril 2009
    Messages
    15 374
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : cuisiniste
    Secteur : Bâtiment

    Informations forums :
    Inscription : Avril 2009
    Messages : 15 374
    Billets dans le blog
    8
    Par défaut re
    re
    non! non! non! non!

    ne confond pas .selecteditems(1) et .selecteditems le premier est enfant du 2d

    voila peut être qui va t'aider
    pour le coup tu a même une démonstration pratique du earlybinding et late binding pour les object
    test 2 fois en inversant les dim
    et lis les msgbox
    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
    Option Explicit
    Sub AfficherFichier()
    'Dim lobjetFile As New Scripting.FileSystemObject
        'Dim monpaquet As FileDialogSelectedItems    'earlybinding
        Dim monpaquet As Object    'latebinding
        With Application.FileDialog(msoFileDialogFilePicker)
            .Title = "Fichier à copier"
            .ButtonName = "Copie"
            If .Show = True Then
                'instanciation de l'object collection de fichier selectionnés!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
                Set monpaquet = .SelectedItems
                MsgBox " le type de monpaquet est " & TypeName(monpaquet)
                MsgBox "j ' ai selectionné " & monpaquet.Count & " fichiers"
                MsgBox " le type d'un item dans mon paquet c'est " & TypeName(.SelectedItems(1))
                MsgBox "le premier(ou seul) nom de fifier dans l'object monpaquet est " & monpaquet(1)
                'lobjetFile.CopyFile .SelectedItems(1), "chemin destination de la copie avec nom du fichier et extension"
            End If
        End With
    End Sub
    je peut pas mieux faire
    mes fichiers dans les contributions:
    mail avec CDO en vba et mail avec CDO en vbs dans un HTA
    survol des bouton dans userform
    prendre un cliché d'un range

    si ton problème est résolu n'oublie pas de pointer : : ça peut servir aux autres
    et n'oublie pas de voter

  14. #14
    Expert confirmé
    Avatar de MarcelG
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juillet 2009
    Messages
    3 449
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 67
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2009
    Messages : 3 449
    Billets dans le blog
    7
    Par défaut
    Bonjour Patrick, Bonjour le Forum,

    Très bien, ces notions me sont plus claires désormais.
    Je n'en faisais pas jusque là un grand usage.

    je peut pas mieux faire
    Pas la peine, désolé. J'espère néanmoins que d'autres novices auront été intéressés par nos échanges.
    Pour ma part, je garde ce code dans ma bibliothèque.

    Pour parler vrai, j'ai codé après avoir quitté le forum hier soir

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Dim litemchoice As Variant
    litemchoice = SelectedItems(1)
    Et comme je déteste le déclarations en Variant, j'ai regardé de plus près les arguments de la méthode CopyFile
    Et l'idée m'est venue, cette nuit en allant ..., d'essayer le type String.
    Ce qu'a validé ton dernier code.

    Une dernière remarque:
    Sur mon poste, la boîte de dialogue porte bien le titre "Fichier à copier"
    Mais le bouton reporte la mention "Ouvrir"
    Et c'est lors de la sélection du fichier que la mention "Copie" apparaît.

    Merci et à plus tard.

  15. #15
    Inactif  

    Homme Profil pro
    cuisiniste
    Inscrit en
    Avril 2009
    Messages
    15 374
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : cuisiniste
    Secteur : Bâtiment

    Informations forums :
    Inscription : Avril 2009
    Messages : 15 374
    Billets dans le blog
    8
    Par défaut re
    re
    Bon jour Marcel
    oui en effet le bouton se met a jour après sélection

    ca me parait logique en fait
    mais je reconnais c'est discutable
    c'est un detail

    je sais pas si on peu le changer le bouton avec getopenfilename que je préfère néanmoins
    edit:
    je viens de verifier on peut le faire que sur Mac avec la propriété buttontext( dommage pour moi )
    mes fichiers dans les contributions:
    mail avec CDO en vba et mail avec CDO en vbs dans un HTA
    survol des bouton dans userform
    prendre un cliché d'un range

    si ton problème est résolu n'oublie pas de pointer : : ça peut servir aux autres
    et n'oublie pas de voter

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

Discussions similaires

  1. Réponses: 1
    Dernier message: 18/11/2008, 21h42
  2. Enregistrer des fichiers dans un dossier
    Par tomtom09 dans le forum VBA Word
    Réponses: 1
    Dernier message: 22/09/2008, 15h33
  3. enregistrer des fichiers dans un dossier
    Par Alexandra0907 dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 06/06/2008, 17h52
  4. [INNO] Installer des fichiers dans le dossier système
    Par Zl@b][roth dans le forum Autres éditeurs
    Réponses: 0
    Dernier message: 20/03/2008, 10h17

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