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 :

Alimenter une base de données EXCEL avec des fichiers csv


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Nouveau candidat au Club
    Homme Profil pro
    manager
    Inscrit en
    Octobre 2022
    Messages
    1
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Réunion

    Informations professionnelles :
    Activité : manager

    Informations forums :
    Inscription : Octobre 2022
    Messages : 1
    Par défaut Alimenter une base de données EXCEL avec des fichiers csv
    Bonjour,

    Je dois compléter tous les jours une base de données excel (tableau excel) en important un fichier CSV.
    J'ai trouvé ce code en faisant des recherches mais l'import du CSV écrase les précédentes données importées.
    Comment faire pour que chaque jour, le csv que j'importe se positionne sur la première ligne vide de mon tableau Excel et comment ne pas importer la première ligne du fichier csv?

    BASE1 correspond au nom de mon tableau

    Merci par avance, car je ne connais vraiment pas VBA et mes heures de recherche ne m'aident pas



    Sub importCSV()
    Dim dialogBox As FileDialog
    Set dialogBox = Application.FileDialog(msoFileDialogFilePicker)
    Dim selectedFile As String
    With dialogBox
    .Filters.Add "txt", "*.txt", 1
    .AllowMultiSelect = False
    If .Show = True Then
    selectedFile = .SelectedItems(1)
    End If
    End With
    If selectedFile <> "" Then
    Open selectedFile For Input As #1
    Dim rowNumber As Long
    Dim lineFromFile As String
    Dim lineItems As Variant 'array of string
    Dim itteration As Integer
    rowNumber = 1
    lineFromFile = 2
    Do Until EOF(1) 'false till end of file is reache then it will turn true
    Line Input #1, lineFromFile
    lineItems = Split(lineFromFile, ";")
    For itteration = 0 To 7
    Range("BASE1").Cells(rowNumber, itteration + 1) = lineItems(itteration)
    Next
    rowNumber = rowNumber + 1
    Loop
    Close #1
    End If
    End Sub

  2. #2
    Membre averti
    Inscrit en
    Mars 2004
    Messages
    52
    Détails du profil
    Informations forums :
    Inscription : Mars 2004
    Messages : 52
    Par défaut
    Bonjour,

    Tu peux essayer 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
     
    Sub importCSV()
    Dim dialogBox As FileDialog
    Dim rowNumber As Long
    Dim lineFromFile As String
    Dim lineItems As Variant 'array of string
    Dim itteration As Integer
    Dim selectedFile As String
     
    Set dialogBox = Application.FileDialog(msoFileDialogFilePicker)
    With dialogBox
        .Filters.Add "txt", "*.txt", 1
        .AllowMultiSelect = False
        If .Show = True Then
            selectedFile = .SelectedItems(1)
        End If
    End With
    If selectedFile <> "" Then
        Open selectedFile For Input As #1
        rowNumber = Cells(Rows.Count, "A").End(xlUp).Row  'Le tableau est sur la feuille active sinon ajouter Sheets("Nom de la feuille"). devant cells(...
        Line Input #1, lineFromFile
        Do Until EOF(1) 'false till end of file is reache then it will turn true
            Line Input #1, lineFromFile
            lineItems = Split(lineFromFile, ";")
            For itteration = 0 To 7
                Range("Base1").Cells(rowNumber, itteration + 1) = lineItems(itteration)
            Next
            rowNumber = rowNumber + 1
        Loop
        Close #1
    End If
    end sub
    En espérant que cela corresponde à ta demande

Discussions similaires

  1. Création d'une base de donné a partir des fichier CSV
    Par lefi0528 dans le forum PHP & Base de données
    Réponses: 9
    Dernier message: 12/01/2016, 20h42
  2. [Android] communiquer avec une base de données externe avec des fichiers php
    Par BadaraDev dans le forum Mon application mobile
    Réponses: 1
    Dernier message: 02/09/2015, 22h08
  3. Réponses: 1
    Dernier message: 22/11/2007, 09h42
  4. Réponses: 3
    Dernier message: 13/08/2006, 11h50
  5. exploiter une base de données excel avec delphi
    Par budylove dans le forum Bases de données
    Réponses: 2
    Dernier message: 01/02/2005, 20h37

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