Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

Vc sharp prebacivanje excel podataka u access bazu

[es] :: .NET :: Vc sharp prebacivanje excel podataka u access bazu

Strane: 1 2

[ Pregleda: 2605 | Odgovora: 21 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

popmilan76

Član broj: 295089
Poruke: 1337
*.dynamic.isp.telekom.rs.



+5 Profil

icon Vc sharp prebacivanje excel podataka u access bazu23.05.2021. u 12:20 - pre 34 meseci
Kako da importujem jedan range podataka iz excel tabele u access,pomocu vc sharpa?
 
Odgovor na temu

popmilan76

Član broj: 295089
Poruke: 1337
*.dynamic.isp.telekom.rs.



+5 Profil

icon Re: Vc sharp prebacivanje excel podataka u access bazu24.05.2021. u 09:20 - pre 34 meseci
U,stvari ono što meni treba jeste,da importujem sve excel filove iz jednog foldera u jednu access tabelu,pomoću c sharp?Jel to uopšte izvodljivo?
 
Odgovor na temu

Shadowed
Vojvodina

Član broj: 649
Poruke: 12846



+4783 Profil

icon Re: Vc sharp prebacivanje excel podataka u access bazu24.05.2021. u 09:43 - pre 34 meseci
Jeste izvodljivo.
Tebi u sustini treba ovaj proces:
Citanje podataka iz Excel fajla -> obrada podataka -> upis u Access fajl.

Taj proces onda ponavljas za sve Excel fajlove iz foldera a za isti Access fajl.

Dakle, ono sto ti treba da znas je:
Kako da procitas fajlove iz Excel fajla
Kako da upises podatke u Access fajl
Kako da za dati folder dobijes sve fajlove.

Ako potrazis npr. ovako: https://duckduckgo.com/?t=ffsb...ata+from+excel+file&ia=web
Dobices medju prvih par rezultata ovo resenje: https://stackoverflow.com/a/15793583/5743967
Za upis u Access fajl, potrazi sam. Hint: resenje je vrlo slicno kao za Excel
Za dobijanje liste fajlova iz foldera pogledaj Directory.GetFiles - https://docs.microsoft.com/en-...irectory.getfiles?view=net-5.0
 
Odgovor na temu

popmilan76

Član broj: 295089
Poruke: 1337
*.dynamic.isp.telekom.rs.



+5 Profil

icon Re: Vc sharp prebacivanje excel podataka u access bazu24.05.2021. u 11:10 - pre 34 meseci
Gledao sam na googlu,ali mi je parcijalno sve...nasao sam kako da ga ubacim u datagrid view i kako da ga sačuvam,ali meni sve to treba odjednom...Inače,sve excel filovi imaju jedan sheet,i odredjeni range,isti za sve,ako se i pojavi neko prazno polje među njima,naknadno ga izbrišem....Valjda ću naći nešto gotovo za ovo...Sve ono što si nabrojao,meni treba...
 
Odgovor na temu

ravni

Član broj: 8894
Poruke: 373



+15 Profil

icon Re: Vc sharp prebacivanje excel podataka u access bazu24.05.2021. u 12:26 - pre 34 meseci
Evo i ja da prilozim

https://duckduckgo.com/?t=ffab...xcel&atb=v269-1&ia=web
https://support.microsoft.com/...40-bcc3-46d9-aa7f-4106f78850b4
 
Odgovor na temu

popmilan76

Član broj: 295089
Poruke: 1337
*.dynamic.isp.telekom.rs.



+5 Profil

icon Re: Vc sharp prebacivanje excel podataka u access bazu25.05.2021. u 16:43 - pre 34 meseci
Svi ovi primeri importuju jednu excel tabelu,ali kako da namestim da to budu svi xls fajlovi u tom folderu?
 
Odgovor na temu

Shadowed
Vojvodina

Član broj: 649
Poruke: 12846



+4783 Profil

icon Re: Vc sharp prebacivanje excel podataka u access bazu25.05.2021. u 16:53 - pre 34 meseci
Isto kao u tim primerima, jedan po jedan fajl.
Ako znas kako da uradis za jedan i ako znas kako da dobijes spisak fajlova u folderu, samo taj postupak primeni na svaki fajl sa spiska.
 
Odgovor na temu

popmilan76

Član broj: 295089
Poruke: 1337
*.dynamic.isp.telekom.rs.



+5 Profil

icon Re: Vc sharp prebacivanje excel podataka u access bazu25.05.2021. u 19:01 - pre 34 meseci
Ovaj kod bi trebao da radi,meni treba isto to,samo da izlista sve xls fajlove u folderu,gde svaki excel fajl ima jedan sheet,i isti range:

private void button1_Click(object sender, EventArgs e)
{
//here is a sample code which reads an Excel file Sheet1 which has 2 columns
//And inserts the same into an access table
//Change the file names, sheet name, table names and column names as per your requirements
//File Names, replae with your file names
string fileNameExcel = @"C:\Users\Natalija\Desktop\KADROVSKA EVIDENCIJA\ARHIVA BROJA IZVRŠILACA\prisutnost 11030.xls";
string fileNameAccess = @"C:\Users\Natalija\Desktop\KADROVSKA EVIDENCIJA\ARHIVA BROJA IZVRŠILACA\baza.mdb";

//Connection string for Excel
string connectionStringExcel =
string.Format("Data Source= {0};Provider=Microsoft.Jet.OLEDB.4.0;Extended Properties=Excel 8.0;", fileNameExcel);
//Connection string for Access

string ConnectionStringAccess =
string.Format("Data Source= {0}; Provider=Microsoft.Jet.OLEDB.4.0; Persist security Info = false", fileNameAccess);

//Connection object for Excel
OleDbConnection connExcel = new OleDbConnection(connectionStringExcel);
//Connection object for Access
OleDbConnection connAccess = new OleDbConnection(ConnectionStringAccess);
//Command object for Excel
OleDbCommand cmdExcel = connExcel.CreateCommand();
cmdExcel.CommandType = CommandType.Text;
cmdExcel.CommandText = "SELECT * FROM [pošta$b10:c10]";

//Command object for Access

OleDbCommand cmdAccess = connAccess.CreateCommand();
cmdAccess.CommandType = CommandType.Text;
cmdAccess.CommandText = "INSERT INTO posta (prezime, ime) VALUES(@prezime, @ime)";
//Add parameter to Access command object
OleDbParameter param1 = new OleDbParameter("@prezime", OleDbType.VarChar);
cmdAccess.Parameters.Add(param1);
OleDbParameter param2 = new OleDbParameter("@ime", OleDbType.VarChar);
cmdAccess.Parameters.Add(param2);
//Open connections
connExcel.Open();
connAccess.Open();
//Read Excel
OleDbDataReader drExcel = cmdExcel.ExecuteReader();

while (drExcel.Read())
{
//Assign values to access command parameters
param1.Value = drExcel[0].ToString();

param2.Value = drExcel[1].ToString();
MessageBox.Show(param1.Value.ToString());
//Insert values in access
cmdAccess.ExecuteNonQuery();
}

//close connections
connAccess.Close();
connExcel.Close();

}
}
}
 
Odgovor na temu

popmilan76

Član broj: 295089
Poruke: 1337
212.200.182.*



+5 Profil

icon Re: Vc sharp prebacivanje excel podataka u access bazu27.05.2021. u 07:38 - pre 34 meseci
Probao sam sa petljom foreach(string file in folderpatk)
...kod za unos u datagridview ...

I u ovom slucaju mi unese samo poslednji xls file...Gde bi trebalo da bude ova petlja...
 
Odgovor na temu

Shadowed
Vojvodina

Član broj: 649
Poruke: 12846



+4783 Profil

icon Re: Vc sharp prebacivanje excel podataka u access bazu27.05.2021. u 08:11 - pre 34 meseci
Kopiraj ovde tu petlju koju imas pa da vidimo sta ne valja.
Usput, bilo bi dobro da koristis [code] tagove jer se bolje prikazuje poruka i mnogo je citljivije.
 
Odgovor na temu

popmilan76

Član broj: 295089
Poruke: 1337
*.dynamic.isp.telekom.rs.



+5 Profil

icon Re: Vc sharp prebacivanje excel podataka u access bazu27.05.2021. u 13:37 - pre 34 meseci
Ovo je kod koji mi prebacuje ix excel sheeta u datagrid view,ali samo poslednji xls fajl...Bilo bi dobro da se insertuje odmah u bazu accessa....


private void button2_Click(object sender, EventArgs e)
{
try
{
string folderpath = @"C:\Users\Natalija\Desktop\KADROVSKA EVIDENCIJA\pop";
string[] filePaths = Directory.GetFiles(folderpath, "*xls", SearchOption.AllDirectories);

foreach (string file in filePaths)
{
System.Data.OleDb.OleDbConnection MyConnection;
System.Data.DataSet DtSet;
System.Data.OleDb.OleDbDataAdapter MyCommand;
MyConnection = new System.Data.OleDb.OleDbConnection ("provider=Microsoft.Jet.OLEDB.4.0;Data Source= " + file + " ;Extended Properties=Excel 8.0;");
MyCommand = new System.Data.OleDb.OleDbDataAdapter("select * from [pošta$b10:e14]", MyConnection);
MyCommand.TableMappings.Add("Table", "TestTable");
DtSet = new System.Data.DataSet();
MyCommand.Fill(DtSet);
dataGridView1.DataSource = DtSet.Tables[0];
MyConnection.Close();
}

}
catch
{

 
Odgovor na temu

Shadowed
Vojvodina

Član broj: 649
Poruke: 12846



+4783 Profil

icon Re: Vc sharp prebacivanje excel podataka u access bazu27.05.2021. u 14:17 - pre 34 meseci
OK, ako analiziras sta se ovde desava, imas sledece:
Kreiras DbSet, uzmes iz jednog fajla podatke i napunis u taj DataSet i zatim DataSet postavis kao DataSource za grid.
Prelazis na sledeci fajl.
Kreiras DbSet, uzmes iz jednog fajla podatke i napunis u taj DataSet i zatim DataSet postavis kao DataSource za grid.
Prelazis na sledeci fajl.
Kreiras DbSet, uzmes iz jednog fajla podatke i napunis u taj DataSet i zatim DataSet postavis kao DataSource za grid.
...

Kao sto vidis, u svakoj iteraciji ti imas NOV DbSet koji nakon sto popunis, postavis kao DataSource grid-u.
To je kao da ti ja imam nekoliko recepata za kupovinu. Ispisem ti jedan na papir pa ti dam i onda ti kazem "e, ne taj, nego ovaj" i dam ti drugi umesto prvog. Pa onda treci itd. I sta ces ti na kraju kupiti? Kupices ono sto je na poslednjem. Umesto toga, trebao bih da ti na prvi dopisem stavke iz drugog, treceg itd.

Isto tako, ti bi trebao jednom da kreiras DbSet i da ga sa DataAdapterom (koji si ti ove neintuitivno nazvao MyCommand) popunis iz svakog fajla i na kraju, posle svega toga ga dodaj u DataSource.
 
Odgovor na temu

popmilan76

Član broj: 295089
Poruke: 1337
*.dynamic.isp.telekom.rs.



+5 Profil

icon Re: Vc sharp prebacivanje excel podataka u access bazu27.05.2021. u 14:48 - pre 34 meseci
Nisam ja ništa od ovoga kreirao,samo copy paste...Sve ovo sto si rekao ja razumem,i krenuo tom logikom,ali gde god da stavim foreach,prikazuje grešku , sem na ovom mestu gde je sada
 
Odgovor na temu

popmilan76

Član broj: 295089
Poruke: 1337
*.dynamic.isp.telekom.rs.



+5 Profil

icon Re: Vc sharp prebacivanje excel podataka u access bazu27.05.2021. u 15:03 - pre 34 meseci
Da,sada sam video,da se u kodu pravi novi dataset svaki put,sada je dobro...A kako da insertujem direktno u bazu accessa?
 
Odgovor na temu

Shadowed
Vojvodina

Član broj: 649
Poruke: 12846



+4783 Profil

icon Re: Vc sharp prebacivanje excel podataka u access bazu27.05.2021. u 15:09 - pre 34 meseci
Citat:
popmilan76:
Nisam ja ništa od ovoga kreirao,samo copy paste...Sve ovo sto si rekao ja razumem,i krenuo tom logikom,ali gde god da stavim foreach,prikazuje grešku , sem na ovom mestu gde je sada

Da, znam da je copy/paste. Izmedju ostalog i zato sto ti za osnovni problem data grid uopste ne treba.
Tvoj glavni problem je to sto ne zelis da naucis osnove. Neko bi mozda rekao "pa dobro, uci na primerima". Medjutim, to je previse ojednostavljeno. Naucis prvo osnove pa ih uvezbas na jednostavnim stvarima pa onda tek krenes sa konkretnim stvarima na kojima ces verovatno i dodatne stvari nauciti. Ovako samo nabadas a ni ne razumes sta radis. I to je pogresno i zato ti i ne dajem gotovo resenje jer ne zelim da pomazem pogresnu stvar.
Jasno je meni da te verovatno programiranje uopste ne zanima i da samo pokusavas da resis neki konkretan problem koji imas na poslu. To je ok, ali nacin na koji to radis je pogresan. Nekome ko ima vise smisla za to bi mozda uspelo tako, ali vidimo rezultat kroz poslednjih nekoliko tema.
Moj ti je predlog da ili naucis prvo osnove programiranja pa onda pocnes da se bavis primenom ili da platis nekog da ti to uradi (cak ce te izaci jeftinije nego vreme koje izgubis ovako). Mogu cak i da ti dam kontakt kome da se javis.

Sve ovo ti pisem za tvoje dobro i kao savet. Mozda je malo grubo jer je direktno ali mislim da je u ovakvoj situaciji najbolje da se direktno kaze stanje stvari.
 
Odgovor na temu

Shadowed
Vojvodina

Član broj: 649
Poruke: 12846



+4783 Profil

icon Re: Vc sharp prebacivanje excel podataka u access bazu27.05.2021. u 15:13 - pre 34 meseci
Citat:
popmilan76:
Da,sada sam video,da se u kodu pravi novi dataset svaki put,sada je dobro...A kako da insertujem direktno u bazu accessa?

Za to ti ne trebaju ni DataSet, ni DataAdapter a pogotovo ne DataGrid. Pogledaj prvo resenje koje sam ti linkovao u ovoj temi. Tu imas primer koda koji ce ti dati pristup direktno podacima koje citas jedan po jedan red.
Iako ne najbolje, za tebe najjednostavnije resenje je da na osnovu tih podataka kreiras, za svaki red po jedan SQL query i upisujes u Access bazu. Nacin na koji upisujes je slican nacinu na koji citas iz Excel fajla. Nadji primer i koristi insert sql upite umesto ovog select-a.
 
Odgovor na temu

popmilan76

Član broj: 295089
Poruke: 1337
*.dynamic.isp.telekom.rs.



+5 Profil

icon Re: Vc sharp prebacivanje excel podataka u access bazu27.05.2021. u 16:11 - pre 34 meseci
Nije grubo,sve ja to razumem,da se ja bavim time,ali pošto će sve to biti hobi za mene,ne profesija,onda moram ovako...a nikako neće biti jeftinije da platim tog nekoga,jer ovo olakšava svima nama a niko to neće da plati...niti ja mogu to da naplatim...Svaki put kada postavim pitanje,prvo izguglam,pa ako bas ne nadjem ništa...onda pitam.Jeste pogrešno sve to,ali jednostavno nisam programer,i ovo što znam je dosta....Hvala ti svakako.Idem da vidim prethodni kod,što si rekao...
 
Odgovor na temu

popmilan76

Član broj: 295089
Poruke: 1337
*.dynamic.isp.telekom.rs.



+5 Profil

icon Re: Vc sharp prebacivanje excel podataka u access bazu29.05.2021. u 17:37 - pre 34 meseci
Da ne otvaram novu temu,mogu i ovde...Da li je datagrid view ograničen što se tiče redova i kolona?Kada postavim 4,5 kolona,prebaci mi iz excela sve što treba,možda oko 200 redova,ali ako dodam još koju kolonu,onda prikaze samo podatke iz prvog xls fajla?
 
Odgovor na temu

popmilan76

Član broj: 295089
Poruke: 1337
*.dynamic.isp.telekom.rs.



+5 Profil

icon Re: Vc sharp prebacivanje excel podataka u access bazu30.05.2021. u 09:31 - pre 34 meseci
Takođe ,imam problem sa formatom ulaznih podataka...Za neka polja očekivano je double,a meni treba sve da bude u text formatu,kao string...Vrlo se čudno ponaša excel,kada se vrši import...Zato bih voleo da ih importujem,pa onda da radim sa njima...Kako da postavim da mi datagrid za sva polja bude texst...S tim što to polje,je isto kao ova prethodna,budu i brojevi i slova...

[Ovu poruku je menjao popmilan76 dana 30.05.2021. u 11:32 GMT+1]
 
Odgovor na temu

popmilan76

Član broj: 295089
Poruke: 1337
*.dynamic.isp.telekom.rs.



+5 Profil

icon Re: Vc sharp prebacivanje excel podataka u access bazu30.05.2021. u 14:45 - pre 34 meseci
private void button2_Click(object sender, EventArgs e)
{

string folderpath = @"C:\Users\Natalija\Desktop\KADROVSKA EVIDENCIJA\Prisutnost";
string[] filePaths = Directory.GetFiles(folderpath, "*xls", SearchOption.AllDirectories);
System.Data.OleDb.OleDbConnection MyConnection;
System.Data.DataSet DtSet;
System.Data.OleDb.OleDbDataAdapter MyCommand;

DtSet = new System.Data.DataSet();

try
{

foreach (string file in filePaths)

{

MyConnection = new System.Data.OleDb.OleDbConnection("provider=Microsoft.Jet.OLEDB.4.0;Data Source= " + file + " ;Extended Properties=Excel 8.0 ;");

MyCommand = new System.Data.OleDb.OleDbDataAdapter("select * from [pošta$a10:ai136] where prezime is not null ", MyConnection);

MyCommand.TableMappings.Add("Table", "TestTable");

MyCommand.Fill(DtSet);


// Get individual datatables here...


dataGridView1.DataSource = DtSet.Tables[0];

MyConnection.Close();

}
}

catch (Exception e1)
{
MessageBox.Show(e1.Message);




}
}


Ovo je kod koji koristim za popunu datagrid.
 
Odgovor na temu

[es] :: .NET :: Vc sharp prebacivanje excel podataka u access bazu

Strane: 1 2

[ Pregleda: 2605 | Odgovora: 21 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.