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

Access Discussion :

VBA Importation problème d'INUPUT BOX


Sujet :

Access

  1. #1
    Membre averti Avatar de snoopy69
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    737
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Novembre 2004
    Messages : 737
    Points : 395
    Points
    395
    Par défaut VBA Importation problème d'INUPUT BOX
    Bonjour ...

    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
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
     
    Sub Import()
     
    strReponse = InputBox("Insérer le chemin du fichier à importer")
     
    If strReponse = "" Then
        MsgBox ("Vous n'avez rien tapé !!!")
        Else
        MsgBox ("Vous avez tapé : " & strReponse)
    End If
     
     
    If MsgBox("Cliquez sur oui pour Importer les données.", vbYesNoCancel) = vbYes Then
     
        'Ouvre Excel pour que l'importation se fasse
        'Une fenêtre va s'ouvrir
        strExcel = "C:\Program Files\Microsoft Office\Office10\excel.exe"
     
        'Ouvre le classeur avant l'importation
        strReponse = strClasseur
        Shell Chr(34) & strExcel & Chr(34) & " " & _
        Chr(34) & strClasseur & Chr(34), vbMinimizedFocus
     
        'Vider la table des villes (copie)
        CurrentDb.Execute "delete * from [test];"
     
        'Importer les données Excel
        DoCmd.TransferSpreadsheet asImport, acSpreadsheetTypeExcel19, _
            "test", "villes.xls", True, "localités!"
            MsgBox "importation terminée !", vbInformation
     
        Else
     
            MsgBox (" L'application va fermer !!! "), vbInformation
     
    End If
     
    End Sub
    Ce que je veux faire c'est demander à l'utilisateur de rentre un chemin d'un fichier excel et une fois le fichier sélectionner l'importer dans une table que je créer manuellement.

    En fait j'ai une erreur ici :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    DoCmd.TransferSpreadsheet asImport, acSpreadsheetTypeExcel19, _
            "test", "villes.xls", True, "localités!"
            MsgBox "importation terminée !", vbInformation
    mon fichier villes.xls est un fichier que j'ai mit pour faire des tests mais es ce que je pourrais remplacer ce bout de code pour que le chemin de mon fichier soit dans une variable et à la place de villes.xls je mette ma variable ???

    Es ce que quelqu'un peut m'aider ... merci d'avance ...
    ... Je me méfie de l'irrespect mais je revendique le droit à la frénésie ...

  2. #2
    Membre expérimenté
    Avatar de Frank
    Homme Profil pro
    Chef de projet Informatique
    Inscrit en
    Avril 2002
    Messages
    1 095
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 57
    Localisation : France, Oise (Picardie)

    Informations professionnelles :
    Activité : Chef de projet Informatique
    Secteur : Industrie Pharmaceutique

    Informations forums :
    Inscription : Avril 2002
    Messages : 1 095
    Points : 1 392
    Points
    1 392
    Par défaut
    Essaies ceci: (sans garantie)

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    DoCmd.TransferSpreadsheet asImport, acSpreadsheetTypeExcel19, _ 
            "test", "" & strReponse  & " & " & villes.xls & "", True, "localités!" 
            MsgBox "importation terminée !", vbInformation

  3. #3
    Nouveau membre du Club
    Homme Profil pro
    Inscrit en
    Décembre 2004
    Messages
    42
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France

    Informations forums :
    Inscription : Décembre 2004
    Messages : 42
    Points : 36
    Points
    36
    Par défaut
    Ca ne va pas règler ton problème mais je ne vois pas de vérification de ce que tape l'utilisateur (à part le cas "champ vide")

    Ton strRéponse contient les données tapées (le chemin), donc le chemin que tu utilises doit être strRéponse

    EDIT : je crois que Frank a eu la même idée

    Par contre fais gaffe au niveau de l'extension, si l'utilisateur ne met pas ".xls" je suis pas sur que ça marche

  4. #4
    Membre averti Avatar de snoopy69
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    737
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Novembre 2004
    Messages : 737
    Points : 395
    Points
    395
    Par défaut
    Salut ...

    Merci de ta solution mais elle ne fonctionne pas ... en fait ce que j'aimerais faire c'est enlever le villes.xls de ce bout de code là :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    DoCmd.TransferSpreadsheet asImport, acSpreadsheetTypeExcel19, _
            "test", "" & strReponse & " & " & villes.xls & "", True, "localités!"
            MsgBox "importation terminée !", vbInformation
    Le code que tu m'as donné ( d'ailleur merci ) me génère une erreur, c'est Objet Requis 04.

    Sais-tu pk ou as-tu une autre solution

    Merci bcp
    ... Je me méfie de l'irrespect mais je revendique le droit à la frénésie ...

  5. #5
    Membre averti Avatar de snoopy69
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    737
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Novembre 2004
    Messages : 737
    Points : 395
    Points
    395
    Par défaut
    J'ai une question pour Shadowritter

    Qu'es-ce que tu entends par
    je ne vois pas de vérification de ce que tape l'utilisateur
    Es ce que tu aurais une solution à me proposer ???
    ... Je me méfie de l'irrespect mais je revendique le droit à la frénésie ...

  6. #6
    Membre expérimenté
    Avatar de Frank
    Homme Profil pro
    Chef de projet Informatique
    Inscrit en
    Avril 2002
    Messages
    1 095
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 57
    Localisation : France, Oise (Picardie)

    Informations professionnelles :
    Activité : Chef de projet Informatique
    Secteur : Industrie Pharmaceutique

    Informations forums :
    Inscription : Avril 2002
    Messages : 1 095
    Points : 1 392
    Points
    1 392
    Par défaut
    En fait, en relisant ton code, je ne comprends pas l'utilité d'ouvrir une instance Excel si tu utilises ensuite
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    docmd.transferspreadsheet
    Mias je n'ai peut être pas tout saisi, car je fais mon taff en même temps.

    Essaies aussi de générer ton chemin de cette façon:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    dim sCheminNomFichier as string
     
    sCheminNomFichier= strReponse & "\" & villes.xls
    Puis tu fais le transfert d'infos

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    DoCmd.TransferSpreadsheet asImport, acSpreadsheetTypeExcel19, _ 
            "test", "sCheminNomFichier", True, "localités!"

  7. #7
    Membre averti Avatar de snoopy69
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    737
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Novembre 2004
    Messages : 737
    Points : 395
    Points
    395
    Par défaut
    Mias je n'ai peut être pas tout saisi
    Alors pour Frank, je fais une explication plus précise :

    Le but de mon application c'est de rentrer un chemin (exact) de fichier Excel dans une inputBox.

    J'aimerais que ce chemin vienne s'enregistrer dans une variable que j'utiliserais pour afficher à l'utilisateur ce qu'il à rentré en premier temps.

    Une fois que l'utilisateur a rentré le chemin j'aimerait que le fichier Excel ( dont le chemin fait référence ) s'ouvre et que l'utilisateur précise bien que c'est ce fichier là qu'il veux importer ( msgBox ). Lorsque l'utilisateur met OUI ( je veux importer ce fichier là ) toutes les données du fichier Excel vienne s'enregistrer dans une table .

    C'est un peut plus clair

    ( pour la citation je rigole si jamais )

    Merci pour toute votre aide
    ... Je me méfie de l'irrespect mais je revendique le droit à la frénésie ...

  8. #8
    Nouveau membre du Club
    Homme Profil pro
    Inscrit en
    Décembre 2004
    Messages
    42
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France

    Informations forums :
    Inscription : Décembre 2004
    Messages : 42
    Points : 36
    Points
    36
    Par défaut
    Citation Envoyé par fluide_glaciale123
    J'ai une question pour Shadowritter

    Qu'es-ce que tu entends par
    je ne vois pas de vérification de ce que tape l'utilisateur
    Es ce que tu aurais une solution à me proposer ???
    Ben en gros si l'utilisateur tape "fichier access Liste d'activité" (ça arrive), ça ne marche pas, vérifie avec un simple If si ça conduit bien à un fichier ou non, je sais plus le nom de la commande mais je crois que valid marche

  9. #9
    Membre averti Avatar de snoopy69
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    737
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Novembre 2004
    Messages : 737
    Points : 395
    Points
    395
    Par défaut
    Merci Shadowritter

    J'ai fait ce test et cela fonctionne c'est déjà un petit plus pour mon application mais ma fois le reste ne marche pas encore ...


    Merci pour ton aide ...
    ... Je me méfie de l'irrespect mais je revendique le droit à la frénésie ...

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

Discussions similaires

  1. [VBA] Import Excel: problème saut de ligne
    Par davasm dans le forum Général VBA
    Réponses: 2
    Dernier message: 30/11/2007, 09h05
  2. Réponses: 2
    Dernier message: 04/06/2007, 15h39
  3. [VBA-A] Problème importation de formulaire
    Par eLoOe dans le forum VBA Access
    Réponses: 6
    Dernier message: 22/05/2006, 11h03
  4. [VBA-A] problème d'import de données texte
    Par David M dans le forum VBA Access
    Réponses: 2
    Dernier message: 08/05/2006, 15h45
  5. [VBA-E]Problème de date lors d'importation
    Par illight dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 12/04/2006, 11h38

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