Ecrire dans une feuille excel! [Résolu]

cs_Xneo 48 Messages postés jeudi 15 janvier 2004Date d'inscription 18 janvier 2007 Dernière intervention - 4 juin 2005 à 12:28 - Dernière réponse : jrbleboss 480 Messages postés jeudi 6 mai 2004Date d'inscription 3 septembre 2007 Dernière intervention
- 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
Afficher la suite 

4 réponses

jrbleboss 480 Messages postés jeudi 6 mai 2004Date d'inscription 3 septembre 2007 Dernière intervention - 4 juin 2005 à 12:41
+3
Utile
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
Cette réponse vous a-t-elle aidé ?  
cs_Xneo 48 Messages postés jeudi 15 janvier 2004Date d'inscription 18 janvier 2007 Dernière intervention - 4 juin 2005 à 13:01
0
Utile
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!
jpleroisse 1788 Messages postés mardi 7 novembre 2000Date d'inscription 11 mars 2006 Dernière intervention - 4 juin 2005 à 13:30
0
Utile
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
jrbleboss 480 Messages postés jeudi 6 mai 2004Date d'inscription 3 septembre 2007 Dernière intervention - 4 juin 2005 à 19:44
0
Utile
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

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.