PDA

View Full Version : Aiutino collegamento database excel con vb.net


mangzeus
15-09-2004, 14:43
IO vorrei collegarmi a questo database excel, allegato quì sotto, con vb.net...Su questo database io devo fare delle select per poi visualizzare il contenuto dei campi es i nomi (Marco, Francesca ecc) in alcune textbox. Poi volevo inoltre fare viceversa: Dalle textbox ad un'altro database excel...VOlevo sapere le principali funzioni o istruzioni per:

- collegarmi al database
- fare delle select
- come individuare i campi, o celle
- come scrivere su un database excel tramite vb.net

Io sono abituato a connettermi con Database Access...Scrivere su database access fare query, select, ecc...Volevo sapere come fare con un database excel perchè con il discorso delle celle non penso sia la stessa cosa. COn Access usavo un dataset e lavoravo in modalità disconnessa ma ripeto non so come muovermi con le celle...

Grazie a chiunque mi dia una mano

vi allego il database semplicissimo che mi serve come prova generale...

mangzeus
17-09-2004, 09:27
nessuno mi può dare una mano???

L4OA
17-09-2004, 12:17
ciao
io l'ho fatto con vbscript in asp.. dovrebbe essere simile ;)

ecco il codice per excel2000

Set cn = Server.CreateObject("ADODB.Connection")
cn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & nomeFile & ";Extended Properties=Excel 8.0;" (il nomeFile è il percorso del .xls)
sql = "select * from Range1" (sul foglio devi selezionanre le celle interessate e inserisci/nome/definisci)
set rsFoglio = server.CreateObject("ADODB.Recordset")
call rsFoglio.Open (sql,cn,1,3,1)

ogni riga è un record
la colonna la individui con rsFoglio.Fields(n).Value con n da 0 a ultima colonna -1
ha tutti i metodi e proprietà di un qualunque recordset ;)

saluti

mangzeus
17-09-2004, 14:41
Originariamente inviato da L4OA
ciao
io l'ho fatto con vbscript in asp.. dovrebbe essere simile ;)

ecco il codice per excel2000

Set cn = Server.CreateObject("ADODB.Connection")
cn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & nomeFile & ";Extended Properties=Excel 8.0;" (il nomeFile è il percorso del .xls)
sql = "select * from Range1" (sul foglio devi selezionanre le celle interessate e inserisci/nome/definisci)
set rsFoglio = server.CreateObject("ADODB.Recordset")
call rsFoglio.Open (sql,cn,1,3,1)

ogni riga è un record
la colonna la individui con rsFoglio.Fields(n).Value con n da 0 a ultima colonna -1
ha tutti i metodi e proprietà di un qualunque recordset ;)

saluti



funziona anche con il dataset??...Saresti così gentile da farmi un esempio di codice con il file excel che ho allegato...Così non riesco a capire molto..Te ne sarei grato.

cipi
17-09-2004, 16:02
avevo lo stesso problema... ti posto la risposta del mitico soalle...
// Declare the variables
using System;
using Microsoft.Office.Interop.Excel;


public class Prova{

public static void Main(){

Application exc;
Workbooks wbs;
Workbook book=null;

// Create the Excel application object.
Console.ReadLine();
exc = new Application();

// Make Excel visible.
exc.Visible = true;
wbs=exc.Workbooks;

// Create a new work book.
try
{
book=wbs.Open("C:\\Lavoro.xls",1,1,1,1,1,1,1,1,1,1,1,1,1,1);
}
catch(Exception e){
Console.WriteLine(e.Message);
}

// Place some text in the first cell of the sheet.
Console.WriteLine(book);
book.Worksheets.PrintPreview(0);

/* Close Excel with the Quit method on the Application object.*/
Console.ReadLine();
wbs.Close();

exc.Quit();
}

}

mangzeus
17-09-2004, 16:42
Originariamente inviato da cipi
avevo lo stesso problema... ti posto la risposta del mitico soalle...
// Declare the variables
using System;
using Microsoft.Office.Interop.Excel;


public class Prova{

public static void Main(){

Application exc;
Workbooks wbs;
Workbook book=null;

// Create the Excel application object.
Console.ReadLine();
exc = new Application();

// Make Excel visible.
exc.Visible = true;
wbs=exc.Workbooks;

// Create a new work book.
try
{
book=wbs.Open("C:\\Lavoro.xls",1,1,1,1,1,1,1,1,1,1,1,1,1,1);
}
catch(Exception e){
Console.WriteLine(e.Message);
}

// Place some text in the first cell of the sheet.
Console.WriteLine(book);
book.Worksheets.PrintPreview(0);

/* Close Excel with the Quit method on the Application object.*/
Console.ReadLine();
wbs.Close();

exc.Quit();
}

}


C non lo conosco...uso vb.net

mangzeus
29-09-2004, 12:37
Ho trovato forse una soluzione con la funzione Excel.Apllication, mi hanno detto che accedo direttamente al database....qualcuno mi saprebbe dire come fare a muovermi nelle celle a leggere nelle celle a scrivere nelle celle e soprattutto a collegare il mio foglio excel....

per dire a quale foglio excel faccio riferimento che funzione devo utilizzare?? perchè nell'msdn non c'è molto sulla funzione excel application.

aiutatemi

cipi
29-09-2004, 17:53
prova a vedere qui (http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dno2k3ta/html/odc_VBNETcallsVBA.asp)

mi pare che ti possa essere utile.... ma non ho controllato se è il link giusto perché sono di fretta :D
bye