Changer des données dans un fichier Excel par un logiciel VB

[Résolu]
Signaler
Messages postés
11
Date d'inscription
mercredi 25 février 2004
Statut
Membre
Dernière intervention
15 novembre 2004
-
Messages postés
11
Date d'inscription
mercredi 25 février 2004
Statut
Membre
Dernière intervention
15 novembre 2004
-
Bonjour, y a-t-il une façon de changer des valeur dans un fichier Excel sans l'ouvrir, ou bien: en l'ouvrant sans qu'il soit visible et en le fermant après l'avoir sauvé, par un logiciel VB?

Merci.

javascript:AjoutSmiley(' :sad) ');

6 réponses

Messages postés
11
Date d'inscription
mercredi 25 février 2004
Statut
Membre
Dernière intervention
15 novembre 2004

je te remercie encore: je vais lire ce que tu me propose, c'est genial !!! En tous cas je pense avoir trouvé la solution. Voilà:

Dim objExcelApp As Object
Dim objWorkSheet As Object
Set objExcelApp = CreateObject("Excel.Application")
objExcelApp.Workbooks.Open ("C:\test.xls")
Set objWorkSheet = objExcelApp.ActiveSheet
objWorkSheet.Cells(1, 1).Value = "test"
objExcelApp.ActiveWorkbook.Close True

' Voilà la difference: En mettant ensemble la fermeture et la sauvegarde tout va comme je souhaite.

objExcelApp.Quit
Set objExcelApp = Nothing

Sans ton aide Je n'aurais jamais réussi. ;)

Tu as raison: "Le Savoir n'a de valeur que s'il est partagé".
3
Merci

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 82 internautes nous ont dit merci ce mois-ci

Messages postés
936
Date d'inscription
lundi 19 janvier 2004
Statut
Membre
Dernière intervention
17 mars 2017
4
Salut,
Oui tu peux

Voici un fragment de code qui te mettra sur le chemin

Dim objExcelApp As Object
Dim objWorkSheet As Object
'   On ouvre Excel
Set objExcelApp = CreateObject("Excel.Application")
'   Un classeur  et une feuille
objExcelApp.WorkBooks.open ("c:\Mon classeur.xls")
'utilise la propriété .Add si le classeur existe déja
Set objWorkSheet = objExcelApp.ActiveSheet
'   ici on rentre les données
objWorkSheet.Cells(1, 1).Value = "Mes données"
' etc......
objExcelApp.Save ("C:\Mon Classeur.xls")

objExcelApp.ActiveWorkbook.Close
objExcelApp.quit

_____________________________________

Jean-Paul

Le Savoir n'a de valeur que s'il est partagé
Messages postés
11
Date d'inscription
mercredi 25 février 2004
Statut
Membre
Dernière intervention
15 novembre 2004

Merci beaucoup!!!! Je vais faire quelques essais...
Je te ferai savoir si tout s'est bien passé.

:)
Messages postés
11
Date d'inscription
mercredi 25 février 2004
Statut
Membre
Dernière intervention
15 novembre 2004

Il semble qu'il y a quelque chose qui ne fonctionne pas. L'ouverture et l'écriture se passent sans problèmes, mais la sauvegarde et la fermeture en ont beaucoup. Si j'essai de donner le chemin après objExcelApp.Save, il ne substitue pas le fichier, mais il cherche toujours à en créer un autre, avec des erreurs de fermeture (il trouve le fichier toujours ouvert par exemple. Impossible de l'éliminer parc qu'il est invisible même au CTRL+ALT+CANC?). J'ai donc essayé d'enlever le chemin et tout semble aller bien, mais si j'essai de répéter le procédé? il me demande si je veux substituer le fichier Reprends.xlw (il s'agit d'une traduction : ça pourrait être Recommences.xlw ou autre?) qu'il a ajouté?

S.O.S.

:sad) :sad) :sad)
Messages postés
936
Date d'inscription
lundi 19 janvier 2004
Statut
Membre
Dernière intervention
17 mars 2017
4
dis moi avec qu'elle version d'Excel travailles-tu ?
_______________________________________

Jean-Paul

Le Savoir n'a de valeur que s'il est partagé
Messages postés
936
Date d'inscription
lundi 19 janvier 2004
Statut
Membre
Dernière intervention
17 mars 2017
4
Tiens j'ai trouvé ça pour toi ça a l'air complet

Cour Excel depuis VB6
_______________________________________

Jean-Paul

Le Savoir n'a de valeur que s'il est partagé