Recuperer le contenu d'1 fichier excel en VB6

Résolu
Amandine -  
Essera Messages postés 2 Statut Membre -
Bonjour forum

j'ai un fichier excel (source) dont je doit recuperer les données pour le mettre dans un autre fichier excel.
tout doit etre piloter en VB6
si quelqu'un peut m'aider à le faire,je lui serai reconnaissant
merci d'avance

24 réponses

  • 1
  • 2
  1. Utilisateur anonyme
     
    Bonjour Amandine,

    Voila, j'ai coder un petit exemple :

    1 textbox avec le nom du fichier
    1 textbox contenant le résultat d'une lecture
    1 textbox contenant le résultat d'une écriture

    4 boutons
    -Ouverture
    -Lecture
    -Ecriture
    -Ferneture

    ' Déclaration des variables globales des objets fichiers
    Dim oFS As Object
    Dim oLecteur As Object

    ' Déclaration des variables globales du classeur EXCEL
    '
    Dim xlApp, xlBook, xlChart, xlRange As Object 'Objets classeur
    Dim xlWhs, iRows, iCols, iRotate As Object 'Objets feuille
    '
    ' Déclaration des variables du fichier
    Dim Fichier As String
    Dim Disque As String
    '

    Private Sub cmd_Ecrire_Click()
    xlRange.Cells(1, 1).Value = tbx_Ecriture.Text
    End Sub
    '

    Private Sub cmd_FermerExcel_Click()
    xlApp.Visible = True
    xlRange.Cells(1, 1).Select
    xlApp.DisplayAlerts = False
    xlBook.SaveAs Fichier
    xlApp.Quit
    xlApp.DisplayAlerts = True

    Set xlRange = Nothing
    Set xlChart = Nothing
    Set xlWKS = Nothing
    Set xlBook = Nothing
    Set xlApp = Nothing
    MsgBox "Fichier fermé"
    End Sub

    Private Sub cmd_Lire_Click()
    tbx_Lecture.Text = xlRange.Cells(1, 1).Value
    End Sub
    '

    Private Sub cmd_OuvrirExcel_Click()

    'Lecture du nom du fichier
    Fichier = tbx_NomCompletFichier.Text

    ' Capture de la lettre du lecteur à écrire
    Disque = Mid(Fichier, 1, 2)
    Set oFS = CreateObject("Scripting.FileSystemObject")
    Set oLecteur = oFS.GetDrive(Disque)
    If (oLecteur.IsReady) Then
    ' Création de l'objet Excel (une classe)
    Set oFS = CreateObject("Scripting.FileSystemObject")
    Set xlApp = CreateObject("Excel.Application")
    'Vérification de la présence du classeur
    If (FichierExistant(Fichier) = True) Then
    ' Ouverture du classeur
    Set xlBook = xlApp.Workbooks.Open(Fichier)
    Else
    ' Création du classeur
    xlApp.SheetsInNewWorkbook = 1
    Set xlBook = xlApp.Workbooks.Add
    End If

    ' Positionnement à l'intérieur du classeur
    Set xlWKS = xlBook.Worksheets(1)
    Set xlRange = xlWKS.Range("A1:A65535")
    MsgBox "Fichier Ouvert"
    End If

    End Sub
    '

    Private Sub cmd_Quitter_Click()
    Unload Me
    End Sub
    '

    Function FichierExistant(NomFichier) As Boolean

    Dim fso As Object

    Set fso = CreateObject("Scripting.FileSystemObject")
    FichierExistant = fso.FileExists(NomFichier)
    Set fso = Nothing

    End Function

    Lupin
    4
  2. sam3000 Messages postés 1226 Statut Membre 144
     
    tu devra utiliser un moteur de base de donnees (les XLS peuvent etres considéré comme une base de donnees dans DBEngine ou ADO par exemple) pour ouvrir le premier fichier
    la base : fichier.xls
    les tables : feuil1, feuil2 ...
    et tu fait des requetes pour lire les donnees
    3
  3. Utilisateur anonyme
     
    re:

    avec ces lignes, tu peux soit lire le contenu, soit écrire le contenu,
    bien sur, il te faudra créer une boucle pour lire une plage donnée.

    ex.: pour insérer les données dans une liste déroulante !

    Private Sub cmd_Lire_Click()

    Dim I,J as integer

    For I = 1 to 10
    For J = 1 to 10
    ComboBox.AddItem xlRange.Cells(I, J).Value
    Next J
    Next I

    End Sub

    1
  4. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  5. sam3000 Messages postés 1226 Statut Membre 144
     
    salut
    est ce que tes fichiers sont des .XLS ou des .CSV?
    0
  6. random Messages postés 1612 Statut Membre 155
     
    tu lances l'enregistreur de macros
    tu fais te copies manu
    tu arrêtes l'enregistement
    tu vas dans visual basic Editor
    c'est prêt
    0
  7. Amandine
     
    je doit le piloter a partir d'une interface
    0
  8. Amandine
     
    bonjour Sam3000, bojour lupin et le forum,

    sam3000, j'ai déja fait ce que tu dit mais ça ne marche pas, j'ai probléme au niveau de la connection.

    Lupin si tu pouvais me guider ce serait mieux car je ne comprend pas le vbs
    merci d'avance
    0
  9. Amandine
     
    sam3000,

    ya pas de fichier dans exemple connection fichier excel
    0
  10. Amandine
     
    j'ai cliké sur la premiere adresse mé y'a rien dans les fichiers
    et pour la deuxieme adresse c'est du turbo pascal
    0
  11. Amandine
     
    bonjour lupin
    je vais tester ton code
    mé est ce qu'il permet de copier le contenu du fichier source?
    merci pour ton aide
    0
  12. Amandine
     
    je suis entrain de tester ton code aprés je vous dirai si ca marche
    merci beaucoup lupin
    0
  13. Utilisateur anonyme
     
    re:

    Note: Je n'ai pas initier l'object xlChart, celui-ci servant
    a gérer un graphique.

    Lupin
    0
  14. Amandine
     
    Bonjour Lupi, bonjour forum

    j'ai tester ton code mais yades errurs de compilation sutout sur xlRange.Cells(1, 1).Value = tbx_Ecriture.Text

    le tbx_Rcriture.text fait référence à quoi?
    merci
    0
  15. sam3000
     
    salut amandine,
    puisque tu n'arrive pas a telecherger le code sur l'adresseje ne sais pas pq d'ailleurs):

    http://membres.lycos.fr/sam3000/v2/index.php?act=shares

    je pourrais te l'envoyer par email (je réecris car tu continue à galérer, alors qu'une solution existe).
    0
    1. Essera Messages postés 2 Statut Membre
       
      sam3000,
      je viens de m'inscrire sur ce forum. J'ai rencontré le même problème que Amandine alors que ce code m'intéresse beaucoup vu que tous mes collègues travaillent sous excel tandis que moi, je dois assembler tous ces fichiers xls en un fichier unique dans le but de l'exporter sous access

      Merci d'avance de ta réponse
      0
    2. Essera Messages postés 2 Statut Membre
       
      Bonjour,

      Est que tu pourras l'envoyer par mail stp sam3000.

      Je te remercie d'avance de ton aide
      0
  16. sam3000 Messages postés 1226 Statut Membre 144
     
    je sais pourquoi vous n'arrivez pas à trouver les liens sur les fichiers! il faut attendre un petit moment jusqu'à ce que les publicités de mon hebergeur soient réduites (ah! lycos)
    0
  17. Utilisateur anonyme
     
    Bonjour Amandine,

    J'ai créé 3 textboxs pour mon petit exemple :
    1 textbox avec le nom du fichier [ tbx_NomCompletFichier ]
    1 textbox contenant le résultat d'une lecture [ tbx_Lecture ]
    1 textbox contenant le résultat d'une écriture [ tbx_Ecriture ]

    ainsi que 4 boutons de contrôle :
    -Ouverture [ cmd_OuvrirExcel ]
    -Lecture [ cmd_Lire ]
    -Ecriture [ cmd_Ecrire ]
    -Ferneture [cmd_FermerExcel ]

    Ces contrôles ne servent qu'a tester l'exemple, il te faudra les
    transposer dans ton application.

    La routine cmd_Lire_Click te permet de lire le contenu d'un fichier
    Excel en récupérant dans une variable [MaVariable].

    Private Sub cmd_Lire_Click()
    MaVariable = xlRange.Cells(1, 1).Value
    End Sub

    La routine cmd_Ecrire_Click te permet d'écrire le contenu d'un fichier
    Excel en lui donnant le contenu d' une variable [MaVariable].

    Private Sub cmd_Ecrire_Click()
    xlRange.Cells(1, 1).Value = MaVariable
    End Sub

    Lupin
    0
  • 1
  • 2