Toon posts:

C# export naar een bestaand excel.

Pagina: 1
Acties:

Verwijderd

Topicstarter
Ik wil waarden uit de database in een bestaande excel-sheet plaatsen.
Ik open een bestaand excelsheet en geef aan dat deze editable is.
Alleen nu zit ik vast bij het moment dat ik de waarden moet gaan invoeren
Iemand een idee hoe verder?

code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
OpenFileDialog openFileDialog1 = new OpenFileDialog();
 
openFileDialog1.InitialDirectory = "c:\\" ;
openFileDialog1.Filter = "Excel files (*.xls)|*.xls" ;
openFileDialog1.FilterIndex = 1 ;
openFileDialog1.RestoreDirectory = true ;

if(openFileDialog1.ShowDialog() == DialogResult.OK)
{
 Excel.Workbook theWorkbook = ExcelObj.Workbooks.Open(openFileDialog1.FileName, 0,false, 5,"", "", true, Excel.XlPlatform.xlWindows,"\t", true, false,0, true,true,true);

Excel.Sheets sheets = theWorkbook.Worksheets;
Excel.Worksheet worksheet = (Excel.Worksheet)sheets.get_Item(5);
// als test loop ik in 10 items en vul ik de cel in met i 
for (int i = 1; i <= 10; i++)
{
   Excel.Range range = worksheet.get_Range("A"+i.ToString(), "J" + i.ToString());
   //  hiermee kan ik een range ophalen
   System.Array myvalues = (System.Array)range.Cells.Value2;
  // ik haal straks uit de database in welke cell waarde i gezet moet worden.
 // nu moet ik dus de waardes invullen en opslaan.
}

  • TeeDee
  • Registratie: Februari 2001
  • Laatst online: 20:39

TeeDee

CQB 241

Hoe zit je vast?
Wat wil je doen?
Wat heb je zelf al geprobeerd?

Heart..pumps blood.Has nothing to do with emotion! Bored


Verwijderd

Topicstarter
TeeDee schreef op dinsdag 07 november 2006 @ 13:11:
Hoe zit je vast?
Wat wil je doen?
Wat heb je zelf al geprobeerd?
Wat ik wil doen is de waarde i plaatsen op de posities die uit de database komen in het excelsheet
en op het einde de wijzigingen opslaan.
Posities kunnen zijn A1 BB23 etc.

Ik ben op dit moment aan het googlen om te vinden hoe ik op een voorgedefinieerde positie in het excel sheet een waarde kan plaatsen en opslaan.
Voor het opslaan zal ik wel de worksheet.SaveAs moeten gebruiken.

[ Voor 6% gewijzigd door Verwijderd op 07-11-2006 13:19 ]


  • TeeDee
  • Registratie: Februari 2001
  • Laatst online: 20:39

TeeDee

CQB 241

Je haalt nu een hele range op.
Als je nu eens alleen een Cell binnenhaalt.

Tip:
C#:
1
2
3
Excel.Worksheet ws=new Excel.WorksheetClass();
ws = (Excel.Worksheet)ThisApplication.ActiveWorkbook.ActiveSheet;
ws.Cells[a,b]=i;

Nu loopt ie de hele reutel door. Als jij nu eens bedenkt wat er op de positie van a en/of b moet komen (komt tenslotte uit je Database) dan ben je al een heel eind gok ik.

[ Voor 9% gewijzigd door TeeDee op 07-11-2006 13:21 ]

Heart..pumps blood.Has nothing to do with emotion! Bored


Verwijderd

Topicstarter
TeeDee schreef op dinsdag 07 november 2006 @ 13:21:
Je haalt nu een hele range op.
Als je nu eens alleen een Cell binnenhaalt.

Tip:
C#:
1
2
3
Excel.Worksheet ws=new Excel.WorksheetClass();
ws = (Excel.Worksheet)ThisApplication.ActiveWorkbook.ActiveSheet;
ws.Cells[a,b]=i;

Nu loopt ie de hele reutel door. Als jij nu eens bedenkt wat er op de positie van a en/of b moet komen (komt tenslotte uit je Database) dan ben je al een heel eind gok ik.
Dit is inderdaad hetgeen ik zocht en a en b zijn de locaties van de betreffende cel.
Bedankt.