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

VBA Access Discussion :

Cleaner un fichier Excel depuis Access


Sujet :

VBA Access

  1. #1
    Membre averti
    Inscrit en
    Août 2007
    Messages
    47
    Détails du profil
    Informations forums :
    Inscription : Août 2007
    Messages : 47
    Par défaut Cleaner un fichier Excel depuis Access
    Bonjour à tous,

    Je sollicite votre aide pour un petit problème que je rencontre. Je dois importer des extractions Excel dans ma BDD Access, chose que je fais en VBA.

    Le problème est que les fichiers Excel (générés par SAP) ne sont pas clean : certains intitulés sont en doublon (exemple, deux fois le champ "désignation") et certains titres comportent des ".", non acceptés par Access.

    Que me conseilleriez vous pour "cleaner" ce fichier Excel depuis Access ? Avez-vous un code associé ?

    Merci beaucoup pour votre aide !!

  2. #2
    Expert confirmé Avatar de nico84
    Homme Profil pro
    Consultant/développeur ERP
    Inscrit en
    Mai 2008
    Messages
    3 128
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Consultant/développeur ERP
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2008
    Messages : 3 128
    Par défaut
    Bonjour,

    Je ne vois pas d'autre solution que d'importer le fichier case à case en essayant de prévoir les différents formats d'import. Le vba étant commun à access et à excel on peut faire plein de trucs (trier les colonnes, supprimer celles inutiles, choisir les colonnes utiles en fonction de leur entete...) mais bien sûr il faut que les fichiers restent pas trop différents...

    Voici un petit exemple pour un cas simple qui modifie des quantités dans une table en fonction d'un tableau reçu :
    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
    Private Sub import_vmi_Click()
    If Not Mode_debug Then On Error GoTo err
    Dim i As Integer, j As Integer, na As Integer
     
    102 i = 2 'ligne lue
    105 Call OuvreExcel(objApp, objBook, fichier) 'procedure qui ouvre l'excel dont le nom est dans le champ "fichier"
    106 objApp.visible = true   'si on veut visualiser
     
    114 j = 0: na = 0 'lignes ok et nok
     
    120 With objBook.ActiveSheet 'la ref est en colonne t, déduction du stock mini colonne l
    122   While .Range("t" & i) > " "
    124     If IsNumeric(.Range("f" & i)) And .Range("f" & i) > 0 Then
    126       Sr = "update stock_arti_champ set stock_vmi_cache=" & .Range("f" & i) - .Range("l" & i) & " where cd_stock_arti=(select cd_article from article where ref='" & .Range("t" & i) & "')"
    127       cno.Execute Sr, Nr
    128       If Nr = 1 Then j = j + 1 Else na = na + 1
            End If
    130     i = i + 1
          Wend
        End With
     
        'libère excel
    200 objBook.Close SaveChanges:=False
    202 objApp.Quit: Set objBook = Nothing: Set objApp = Nothing
    204 MsgBox i - 2 & " lignes lues et " & j & " quantités modifiées " & IIf(na > 0, " - " & na & " ligne(s) en anomalie !", ""), vbInformation, "import quantités"
        Exit Sub
    err: Call message("Erreur " & err.Number & "/" & Erl & " dans EDI_convert.import_vmi : " & err.description) 'procedure perso de gestion d'erreur
    End Sub

Discussions similaires

  1. renommer une feuille d'un fichier excel depuis Access en VBA
    Par alexkickstand dans le forum VBA Access
    Réponses: 2
    Dernier message: 23/08/2007, 17h55
  2. [VBA] Mise en forme d'un fichier Excel depuis Access
    Par morgiane dans le forum Access
    Réponses: 2
    Dernier message: 25/07/2007, 10h32
  3. [VBA Excel Débutant] Tri d'un fichier Excel depuis Access
    Par elgringo2007 dans le forum Access
    Réponses: 3
    Dernier message: 07/08/2006, 16h21
  4. comment fermer un fichier Excel depuis Access?
    Par audrey_desgres dans le forum Access
    Réponses: 14
    Dernier message: 21/06/2005, 12h43
  5. Ouvrir un fichier excel depuis access
    Par ptitegrenouille dans le forum Macros et VBA Excel
    Réponses: 11
    Dernier message: 03/05/2005, 11h47

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