Ecrire dans une feuille excel!

Résolu
cs_Xneo Messages postés 48 Date d'inscription jeudi 15 janvier 2004 Statut Membre Dernière intervention 18 janvier 2007 - 4 juin 2005 à 12:28
jrbleboss Messages postés 480 Date d'inscription jeudi 6 mai 2004 Statut Membre Dernière intervention 3 septembre 2007 - 4 juin 2005 à 19:44
Voila jai un pti souci! je voudrais en VB6 lire et ecrire des info contenues dans une feuille excel en connaissan le cellule!
Pour la lecture pas de souci! j'ai trouvé ce code et sa marche super:

'Déclaration des variables
'Dim appExcel As Excel.Application 'Application Excel
Dim wbExcel As Excel.Workbook 'Classeur Excel
Dim wsExcel As Excel.Worksheet 'Feuille Excel

'Ouverture de l'application
Set appExcel = CreateObject("Excel.Application")
' Ouverture d'un fichier Excel
Set wbExcel = appExcel.Workbooks.Open("C:\Classeur1.xls")
' wsExcel correspond à la première feuille du fichier
Set wsExcel = wbExcel.Worksheets(1)


Dim somme As String
somme = wsExcel.Cells(1, 1)

Par contre impossbile decrire ds la feuille!
j'ai trouvé ce code mais sa compile pas!

'La propriété Range(zone) permet de sélectionner une zone. La variable zone est une chaine de caractère de la forme "B5:T20" (cellule du coin haut gauche et cellule bas droite séparée par le caractère ':')
sheet.Range(colHeader(2) & "4:" & colHeader(2) & "4").Select
'La chaine formée par colHeader(2) & "4:" & colHeader(2) & "4" donne "B4:B4" ce qui sélectionne une seule cellule
sheet.Selection.Value = somme

J'ai aucun attribut Selection alor jvoi pa tro commeent faire!
Si kk1 a une solution... merci

4 réponses

jrbleboss Messages postés 480 Date d'inscription jeudi 6 mai 2004 Statut Membre Dernière intervention 3 septembre 2007 1
4 juin 2005 à 12:41
dans ton projet tu rajoute comme reference "Microsoft Excel Object library"



Public xl as Excel.Application



private sub lire

Set XL = New Excel.Application

XL.Workbooks.Open ("chemin du fichier xls") ' la c'est si tu veux ouvrir un classeur particulier

XL.Sheets("ta feuille").Select 'selectionne ta feuille

ce que tu veux = XL.cells(1,1)

XL.ActiveWorkbook.Close False ' ferme le classeur sans enregistrer

XL.Quit ' ferme excel

end sub


private sub ecrire


Set XL = New Excel.Application


XL.Workbooks.Open ("chemin du fichier xls") ' la c'est si tu veux ouvrir un classeur particulier

XL.Sheets("ta feuille").Select 'selectionne ta feuille

XL.cells(1,1) = ce que tu veux


XL.ActiveWorkbook.Close False ' ferme le classeur sans enregistrer


XL.Quit ' ferme excel


end sub


JRB
3
cs_Xneo Messages postés 48 Date d'inscription jeudi 15 janvier 2004 Statut Membre Dernière intervention 18 janvier 2007
4 juin 2005 à 13:01
G honte! j'ai fais
"ce que tu veux = XL.cells(1,1)"
mais j'ai meme pas pensé faire le contraire pour lécriture!
merci en tt cas!
0
jpleroisse Messages postés 1788 Date d'inscription mardi 7 novembre 2000 Statut Membre Dernière intervention 11 mars 2006 27
4 juin 2005 à 13:30
Bonjour,



Private Sub Command1_Click()

Dim appExcel As Excel.Application 'Application Excel

Dim wbExcel As Excel.Workbook 'Classeur Excel

Dim wsExcel As Excel.Worksheet 'Feuille Excel



'Ouverture de l'application

Set appExcel = CreateObject("Excel.Application")

' Ouverture d'un fichier Excel

Set wbExcel = appExcel.Workbooks.Open("C:\Classeur1.xls")

' wsExcel correspond à la première feuille du fichier

Set wsExcel = wbExcel.Worksheets(1)



Dim En_Colonne, En_Ligne

wsExcel.Cells(1, 1).Select

En_Colonne = ActiveCell.Column

En_Ligne = ActiveCell.Row + 1

While Not IsEmpty(ActiveCell.Value)

Cells(En_Ligne, En_Colonne).Activate

En_Ligne = En_Ligne + 1

Wend

ActiveCell.Offset(0, 0).Range("A1").Select

ActiveCell.Value = Text1.Text

ActiveCell.Offset(0, 1).Range("A1").Select

ActiveCell.Value = Text2.Text

ActiveCell.Offset(0,2).Range("A1").Select

ActiveCell.Value = Text3.Text

'Efface les TextBox pour une entrée suivante

Text1 = ""

Text2 = ""

Text3 = ""

Dim somme As String

somme = wsExcel.Cells(1, 1)

Text4 = somme

wbExcel.Close

appExcel.Quit

End Sub



jpleroisse
0
jrbleboss Messages postés 480 Date d'inscription jeudi 6 mai 2004 Statut Membre Dernière intervention 3 septembre 2007 1
4 juin 2005 à 19:44
oui c'est sur mais cela arrive a tout le monde de ne pas voir des choses simples


jplepoisse ton code est bien mais beaucoup plus long.


JRB
0
Rejoignez-nous