(10/09/2008 09:30)
Merhabalar;
İstediğim şey....C# daki forma eklemiş olduğum TextBoxların içine veri girildiğinde o verileri Excel e kayıt etsin ve aynı şekilde Exceldeki bir sütundaki satırları C# daki forma eklemiş olduğum Comboboxlara aktarsın....
Bu konuda bana yardım ederseniz sevinirim..... :)
Öncelikle konuyu iki kere açtığınızı belirtmek istiyorum.Örnekle açıklayayım bildiğim kadarını.
3 tane sütuna sahip bir Excel belgesi oluşturun,
Daha sonra windows projesi olştrn,Toolboxtan projenin üzerine bir Listview, bir Buttun ve bir OpenFileDialog sürükle,
Solution Explorer penceresinde Refences üzerine sağ tıklayarak Add Reference (Referans Ekle) seç,
Açılan penceredeki COM sekmesinden Microsof Excel 11.0 Object Library bileşenini seçip OK dediğimizde projemizin bin klasörü altına Inteop.Excel.dll ve Interop.Microsoft.Office.Core.dll adlı dll dosyalarının geldiğini göreceksin,
excell nesnesini oluştur;
CODE:
private Excel.Application ExcelNesnesi = null;
public Form1()
{
InitializeComponent();
ExcelNesnesi = new Excel.Application();
if (ExcelNesnesi == null)
{
MessageBox.Show("Hata! Dosya Açılamadı.");
System.Windows.Forms.Application.Exit();
private void button1_Click(object sender, EventArgs e)
{
this.openFileDialog1.FileName = "*.xls";
if (this.openFileDialog1.ShowDialog() == DialogResult.OK)
{
Excel.Workbook theWorkbook =
ExcelNesnesi.Workbooks.Open(
openFileDialog1.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.Sheets sheets = theWorkbook.Worksheets;
Excel.Worksheet worksheet = (Excel.Worksheet)sheets.get_Item(1);
for (int i = 1; i <= 10; i++)
{
Excel.Range range =
worksheet.get_Range("A" + i.ToString(), "C" + i.ToString());
System.Array myvalues = (System.Array)range.Cells.Value2;
string[] strArray = ConvertToStringArray(myvalues);
listView1.Items.Add(new ListViewItem(strArray));
}
}
}
Excel.Worksheet worksheet = (Excel.Worksheet)sheets.get_Item(1);
string[] ConvertToStringArray(System.Array values)
{
string[] theArray = new string[values.Length];
for (int i = 1; i <= values.Length; i++)
{
if (values.GetValue(1, i) == null)
theArray[i - 1] = "";
else
theArray[i - 1] = (string)values.GetValue(1, i).ToString();
}
return theArray;
}
Merhabalar;
Ben daha yeniyim.
Anladığım kadarıyla Excel deki bilgiyi Listview a aktardınız..
Benim asıl istediğim ise;
Listview daki veriler eğer aynı ise üstüne toplasın değilse altına yazsın ve bu verilerin hepsini Excel ' e aktarsın.
Bu konuda yardımcı olabilirsen çokkkk sevinirim :)
Oğuz paylaşım harika klavyene sağlık ustad...
Saygılar.
Seyhan
[IMG SRC="http://img225.imageshack.us/img225/2408/seyhanzt2.jpg" ALIGN="oğuz"]seyhan[/IMG]
