Novo

Forum kao aplikacija na telefonu

Dodajte forum na početni ekran i koristite ga kao aplikaciju, sa menijem na dnu ekrana.

  • 8 odgovora
  • 5.624 pregleda

Najnovija ↓

Kako da uzmem podatke iz *.xls fajla? c# 07.04.2004. u 20:14 · pre 274 meseca #1
Imam podatke u exlcel fajlu(ocene i nazive predmeta),e sad mi treba kako da uzmem te podatke da ih ubacim u neke nizove.
Potpis
Re: Kako da uzmem podatke iz *.xls fajla? c# 08.04.2004. u 16:14 · pre 274 meseca #3
Možeš i preko ODBC-a, napravi ODBC konekciju koristeći "Microsoft Excel Driver (.xls)" i onda je otvori kao i bilo koju drugu odbc konekciju preko OleDbConnection objekta. Ovo sve pod uslovom da su podaci na sheetu u formi data tabele, bez šminke i ostalih gluposti. Radi dosta brže od automation pristupa. Naravno, ako je sheet šminkan, moraš da ideš preko rešenja koje ti je ZokiR dao.
Potpis
Sloba je za 12 godina promenio antropološki kod srpskog naroda. On je od jednog
naroda koji je bio veseo, pomalo površan, od jednog naroda koji je bio znatiželjan, koji
je voleo da vidi, da putuje, da upozna,
od naroda koji je bio kosmopolitski napravio narod koji je namršten, mrzovoljan,
sumnjicav, zaplašen, narod koji se stalno nešto žali, kome je stalno neko kriv - Z.Đinđić
Re: Kako da uzmem podatke iz *.xls fajla? c# 09.04.2004. u 13:31 · pre 274 meseca #4
E zanimljivo,cuop sam vec negde ODBC samo ako bih mogao da mi objasnis malo,moze se reci da sam veoma kratak sa znanjem iz programiranja,a zelim da ucim,mislio sam da napravim program za izracunavanje proseka,u xls fajlu u A koloni je naziv predmeta dok su u b,c,d... kolonama ocene,svaka kolona jedna ocena,valda razumes.

Pa ako mozes malo sa ODBC da mi pomognes.
Potpis
Re: Kako da uzmem podatke iz *.xls fajla? c# 09.04.2004. u 14:20 · pre 274 meseca #5
Napravio sam dugme kada se klikne treba da uzme podatke iz fajla
kod ide ovako


private void button1_Click(object sender, System.EventArgs e)

{
Excel.Application objExcel = new Excel.ApplicationClass();
objExcel.Visible = true;
Excel.Workbook objBook = objExcel.Workbooks._Open(@"C:\ocene.xls",Ocene.Form1,no,"xls","","","","","","","","");

}

vidi se neka glupost,e sad da li sam pogresio u otvaranju fajla sa _Open ili kako da ga otvorim i sta treba gde da upisem?
Da napomenem da fajl nije readonly,da nije zasticen sifrom i da se nalazi na c:\.
Potpis
Re: Kako da uzmem podatke iz *.xls fajla? c# 10.04.2004. u 13:42 · pre 274 meseca #6
Connection string ti je oblika:

Provider=MSDASQL.1;Persist Security Info=False;Extended Properties="DSN=OceneX;DBQ=C:\ocene.xls;DefaultDir=C:\;DriverId=790;FIL=excel 8.0;MaxBufferSize=2048;PageTimeout=5;"

a to kako da iskoristiš connection string da dođeš do podataka, pogledaj TOP temu "ADO.NET & Data Set: mini - uputstvo" u ovom forumu.


Potpis
Sloba je za 12 godina promenio antropološki kod srpskog naroda. On je od jednog
naroda koji je bio veseo, pomalo površan, od jednog naroda koji je bio znatiželjan, koji
je voleo da vidi, da putuje, da upozna,
od naroda koji je bio kosmopolitski napravio narod koji je namršten, mrzovoljan,
sumnjicav, zaplašen, narod koji se stalno nešto žali, kome je stalno neko kriv - Z.Đinđić
Re: Kako da uzmem podatke iz *.xls fajla? c# 10.04.2004. u 15:27 · pre 274 meseca #7
Ako si odabrao automaciju, vrednostima pristupaš preko Worksheet.Cells niza i Range objekta, ovako:

Code:

OpenFileDialog openFileDialog = new OpenFileDialog();
openFileDialog.Filter = "Excel Spreadsheet (*.xls)|*.xls";

if (DialogResult.OK == openFileDialog.ShowDialog())
{
    Excel.Application excel = new Excel.ApplicationClass();
    Excel.Workbook workbook = excel.Workbooks.Open(openFileDialog.FileName, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing);
    Excel.Worksheet worksheet = (Excel.Worksheet)workbook.ActiveSheet;

    int rowIndex = 1;
    while (true)
    {
        Excel.Range subjectRange = (Excel.Range)worksheet.Cells[rowIndex, 1];
        if (subjectRange.Value2 == null)
        {
            break;
        }
        string subjectName = (string)subjectRage.Value2;

        // Ovde dodaj kod za čuvanje imena predmeta...
        // ...

        int columnIndex = 2;
        while (true)
        {
            Excel.Range gradeRange = (Excel.Range)worksheet.Cells[rowIndex, columnIndex];
            if (gradeRange.Value2 == null)
            {
                break;
            }
            double grade = (double)gradeRange.Value2;
            
            // Ovde dodaj kod za čuvanje ocene...
            // ...
            
            columnIndex ++;
        }
        rowIndex ++;
    }            

    workbook.Close(false, Type.Missing, Type.Missing);
    excel.Quit();
}
Re: Kako da uzmem podatke iz *.xls fajla? c# 10.04.2004. u 18:32 · pre 274 meseca #8
Uspesno kompajliram,i kada kliknem dugme za ucitavanje i izaberem fajl izbaci da ne valja biblioteka,tj "Old format or invalid type library." i da je greska u ovom redu koda:
Excel.Workbook workbook = excel.Workbooks.Open(openFileDialog.FileName, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing);
Potpis
Prijavite se da biste odgovorili u ovoj temi.PrijavaRegistracija

Premeštanje teme