STEU Inserito: 26 ottobre 2005 Segnala Inserito: 26 ottobre 2005 Avrei un problema con Visual Basic 6.Ho delle tabelle fatte con excel , devo accedere ai dati di questi file xls con dei programmi fatti con VB.Attualmente genero dei file csv direttamente da excel ,il programma di VB accede e manipola i dati csv e li risalva sul file stesso,infine importo con excel i file csv così ho il file xls aggiornato.Premetto che il programma DEVE essere esterno e non puo' essere una macro di excel.E' possibile accedere direttamente ai file xls dall'applicazione di VB senza effettuare il passaggio in csv?Capisco che la domanda puo' sembrare banale per chi ha familiarita' con VB ma io sono solo agli inizi.Grazie a chiunque possa aiutarmi
Simons Inserita: 26 ottobre 2005 Segnala Inserita: 26 ottobre 2005 (modificato) devi usare il data control che è tra gli strumenti predefiniti di visual basic, però non mi ricordo come si configura sennò c'è ADO Data Control che lo trovi tra i componenti aggiuntivi di visual studio (progetto->componenti)mi scuso se non ti sono stato di grande aiutociao Modificato: 26 ottobre 2005 da Simons
JumpMan Inserita: 26 ottobre 2005 Segnala Inserita: 26 ottobre 2005 Puoi anche accedere direttamente alle celle di un foglio di lavoro...Ti metto un esempio che avevo provato tempo fa:- fai una form con 3 pulsanti e una text-box, - mettti un file di prova in c:\temp\prova.xls- incolla questo codice Option Explicit Dim XLObj As Object Private Sub Command1_Click() ' Questo tasto serve per uscire dal programma ' Destroy the object. Set XLObj = Nothing ' Exit the program. End End Sub Private Sub Command2_Click() ' Questo tasto scrive nel foglio excel XLObj.Application.Worksheets("Foglio1").Range("A1:B4").Value = 1234 End Sub Private Sub Command3_Click() ' Questo tasto legge una cella dal foglio excel Text2.Text = XLObj.Application.Worksheets("Foglio1").Range("A2").Value End Sub Private Sub Form_Load() ' Create the Excel sheet object. Set XLObj = CreateObject("Excel.Sheet") XLObj.Application.Workbooks.Open "c:\temp\prova.xls" End Sub
STEU Inserita: 27 ottobre 2005 Autore Segnala Inserita: 27 ottobre 2005 Jumpman , grazie molto il programmino che mi hai inviato funziona perfettamente e mi ha fatto capire alcune cose , in quanto riesco a scrivere e leggere le celle dal mio form in VB.Il problema è che una volta che chiudo il form e vado a leggere il file xls con excel , vedo che tutte le celle sono vuote.A me interesserebbe , se fosse possibile, accedere ai dati scritti nelle caselle con excel una volta che il programme VB è terminato.E' possibile?
STEU Inserita: 27 ottobre 2005 Autore Segnala Inserita: 27 ottobre 2005 Di nuovo grazie jump menho aggiunto una riga alla rutine di uscita che salva il file xls.Private Sub Command1_Click() ' Questo tasto serve per uscire dal programma 'Serve per salvare il file riga aggiunta da me XLObj.Application.save ' Destroy the object. Set XLObj = Nothing ' Exit the program. End End Sub Ora la mia domanda è:E' giusto come ho fatto?Grazie a chi mi puo' aiutare
STEU Inserita: 27 ottobre 2005 Autore Segnala Inserita: 27 ottobre 2005 Private Sub Command1_Click() XLObj.Application.ActiveWorkbook.save ' Destroy the object. Set XLObj = Nothing ' Exit the program. End End Sub Con il codice del post precedente mi creava un file chiamato riprendimi.xlwcon quello scritto in questo (la differenza è nella seconda riga) non mi genera piu' questo file.Qualcuno saprebbe darmi una spiegazione?Credo che questa soluzione sia piu' esatta, e' così?Grazie
STEU Inserita: 27 ottobre 2005 Autore Segnala Inserita: 27 ottobre 2005 (modificato) Ok per informazione tutto funziona bene con un file gia' esistente come nei post precedenti prova.xls.Ma è possibile generare un file nuovo di excel da VB? Modificato: 27 ottobre 2005 da STEU
dago_ Inserita: 27 ottobre 2005 Segnala Inserita: 27 ottobre 2005 Ma è possibile generare un file nuovo di excel da VB?
Messaggi consigliati
Crea un account o accedi per commentare
Devi essere un utente per poter lasciare un commento
Crea un account
Registrati per un nuovo account nella nostra comunità. è facile!
Registra un nuovo accountAccedi
Hai già un account? Accedi qui.
Accedi ora