Rechercher : dans
Par :

Recuperer le contenu d'1 fichier excel en VB6

Dernière réponse le 20 mai 2009 à 07:28:05 Amandine, le 13 mai 2005 à 16:16:43 
 Signaler ce message aux modérateurs

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

1

sam3000, le 13 mai 2005 à 16:20:02

Salut
est ce que tes fichiers sont des .XLS ou des .CSV? L'erreur est humaine mais un véritable désastre
ne peut être qu'informatique.

Répondre à sam3000

2

Amandine, le 13 mai 2005 à 16:21:18

Les fichiers sont des xls

Répondre à Amandine

3

random, le 13 mai 2005 à 16:24:10

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 elle est pas belle, la vie ?

Répondre à random

4

Amandine, le 13 mai 2005 à 16:27:04

Je doit le piloter a partir d'une interface

Répondre à Amandine

5

sam3000, le 13 mai 2005 à 17:04:27
  • +4

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 L'erreur est humaine mais un véritable désastre
ne peut être qu'informatique.

Répondre à sam3000

6

Lupin.Arsene, le 13 mai 2005 à 17:35:16

Bonjour Amandine,

voici un exemple de VBS pour piloter Excel, le code est transposable sous VB assez facilement !

http://www.oricom.ca/lupin/document/excelvbs.txt

si ce n'est pas clair, dis le, je pourrai te guider !

Lupin
~L'essentiel est invisible pour les yeux~
~On ne voit bien qu'avec le coeur~

Répondre à Lupin.Arsene

7

Amandine, le 16 mai 2005 à 11:15:41

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

Répondre à Amandine

8

sam3000, le 16 mai 2005 à 12:09:35

Salut,
voici un exemple complet d'utilisation de Excel (comme une base de donnees) avec VB6 et ADO

http://membres.lycos.fr/sam3000/v2/index.php?act=shares
L'erreur est humaine mais un véritable désastre
ne peut être qu'informatique.

Répondre à sam3000

9

Amandine, le 16 mai 2005 à 12:21:51

Sam3000,

ya pas de fichier dans exemple connection fichier excel

Répondre à Amandine

10

sam3000, le 16 mai 2005 à 13:49:45

Bien sur que si!
tu ouvre la page et tu clique sur le nom de l'exemple
c'est un fichier dont le nom est "VB_ADO_EXCEL.zip"

http://membres.lycos.fr/sam3000/v2/shr/VB_ADO_EXCEL.zip
L'erreur est humaine mais un véritable désastre
ne peut être qu'informatique.

Répondre à sam3000

11

Amandine, le 16 mai 2005 à 14:12:55

J'ai cliké sur la premiere adresse mé y'a rien dans les fichiers
et pour la deuxieme adresse c'est du turbo pascal

Répondre à Amandine

12

Lupin.Arsene, le 16 mai 2005 à 15:36:42

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
~L'essentiel est invisible pour les yeux~
~On ne voit bien qu'avec le coeur~

Répondre à Lupin.Arsene

13

Amandine, le 16 mai 2005 à 15:55:02

Bonjour lupin
je vais tester ton code
mé est ce qu'il permet de copier le contenu du fichier source?
merci pour ton aide

Répondre à Amandine

14

Lupin.Arsene, le 16 mai 2005 à 16:08:42

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

~L'essentiel est invisible pour les yeux~
~On ne voit bien qu'avec le coeur~

Répondre à Lupin.Arsene

15

Amandine, le 16 mai 2005 à 16:18:51

Je suis entrain de tester ton code aprés je vous dirai si ca marche
merci beaucoup lupin

Répondre à Amandine

16

Lupin.Arsene, le 16 mai 2005 à 17:22:02

Re:

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

Lupin
~L'essentiel est invisible pour les yeux~
~On ne voit bien qu'avec le coeur~

Répondre à Lupin.Arsene

17

Amandine, le 17 mai 2005 à 09:59:38

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

Répondre à Amandine

18

sam3000, le 17 mai 2005 à 11:19:20

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).
L'erreur est humaine mais un véritable désastre
ne peut être qu'informatique.

Répondre à sam3000

25

Essera, le 20 mai 2009 à 07:26:51

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

Répondre à Essera

26

 Essera, le 20 mai 2009 à 07:28:05

Bonjour,

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

Je te remercie d'avance de ton aide

Répondre à Essera

19

sam3000, le 17 mai 2005 à 11:57:31

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)
L'erreur est humaine mais un véritable désastre
ne peut être qu'informatique.

Répondre à sam3000
Collection CommentÇaMarche.net