(20/10/2008 03:58)
Merhabalar;
Forma yerleştirdiğim textboxların içine veri girilip aktar denildiğinde datagridview a aktarıcak.
Kodum şu şekilde;
int satirSayisi=dataGridView1.Rows.Count - 1 ;
dataGridView3[1, satirSayisi].Value = combo_artikel.Text;
dataGridView3[2, satirSayisi].Value = txt_modeladi.Text;
dataGridView3[3, satirSayisi].Value = dateTimePicker1.Text;
dataGridView3[4, satirSayisi].Value = txt_adet.Text;
dataGridView3[5, satirSayisi].Value = combo_giris_firma.Text;
dataGridView3[6, satirSayisi].Value = dateTimePicker2.Text;
dataGridView3[7, satirSayisi].Value = txt_cikis_adet.Text;
dataGridView3[8, satirSayisi].Value = combo_cikis_firma.Text;
Fakat burda ikinci defa aktar dediğimde 2. bir satır eklemiyor.1.satırdaki eski değer silinip yerine yazılıyor
Yardımcı olursanız sevinirim :)
Sorunumu Hallettim.
Fakat Bi sorum daha var;
DataGridView daki bilgileri excele nasıl aktarabilirim?
Yardım ederseniz sevinirim :)
Bulduğunu paylaş istersen diğerleride yararlansın;)
DataGrid e aktarma kodu;
dataGridView3.Rows.Add(
dataGridView3.Rows.Count + 1,
combo_artikel.Text,
txt_modeladi.Text,
dateTimePicker1.Text,
txt_adet.Text,
combo_giris_firma.Text,
dateTimePicker2.Text,
txt_cikis_adet.Text,
combo_cikis_firma.Text
);
DataGrid dekini Excele Aktarma kodu;
ApplicationClass excel = new ApplicationClass();
object Missing = Type.Missing;
Workbook workbook = excel.Workbooks.Add(Missing);
Worksheet sheet1 = (Worksheet)workbook.Sheets[1];
int StartCol = 1;
int StartRow = 2;
for (int j = 0; j < dataGridView3.Columns.Count; j++)
{
Range myRange = (Range)sheet1.Cells[StartRow, StartCol + j];
myRange.Value2 = dataGridView3.Columns[j].HeaderText;
}
StartRow++;
for (int i = 0; i < dataGridView3.Rows.Count; i++)
{
for (int j = 0; j < dataGridView3.Columns.Count; j++)
{
try
{
Range myRange = (Range)sheet1.Cells[StartRow + i, StartCol + j];
myRange.Value2 = dataGridView3[j, i].Value == null ? "" : dataGridView3[j, i].Value;
}
catch
{
;
}
}
Buyrun.. :)
Sağolasn şimdi oldu.Teşekkürler.Bu aktarmalarla ilgili sanırım eksiklik var açıklayıcı bir yazı eğitime eklenecek zaten yakında.Kolay gelsin..
Excell e aktarmayı birde ben yazayım..
CODE:
using System;
using System.Data;
using Excel = Microsoft.Office.Interop.Excel;
namespace DataTableToExcel
{
/// <summary>
/// Summary description for ExcelClass.
/// </summary>
public class ExcelClass
{
public ExcelClass()
{
//
// TODO: Add constructor logic here
//
}
static object [] harf = {"A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z","AA","AB","AC","AD","AE","AF","AG","AH","AI","AJ","AK","AL","AM","AN","AO","AP","AQ","AR","AS","AT","AU","AV","AW","AX","AY","AZ"};
public static void ExcelOlustur(DataTable dt)
{
Excel.ApplicationClass ex = new Microsoft.Office.Interop.Excel.ApplicationClass();
ex.Application.Workbooks.Add(true);
int sutun=0;
foreach(DataColumn sut in dt.Columns)
{
ex.get_Range(harf[sutun]+"1",harf[sutun]+"1").Interior.ColorIndex = 35;
ex.get_Range(harf[sutun]+"1",harf[sutun]+"1").Interior.Pattern = Excel.XlPattern.xlPatternSolid;
ex.get_Range(harf[sutun]+"1",harf[sutun]+"1").Font.Bold = true;
sutun+=1;
ex.Cells[1,sutun]=sut.ColumnName.ToString();
//ex.get_Range(harf[sutun],harf[sutun]).AutoFit();
}
int satir=0;
foreach(DataRow sat in dt.Rows)
{
satir+=1;
sutun=0;
foreach(DataColumn sut in dt.Columns)
{
ex.get_Range(harf[sutun]+(satir+1).ToString(),harf[sutun]+(satir+1).ToString()).Interior.ColorIndex = 19;
ex.get_Range(harf[sutun]+(satir+1).ToString(),harf[sutun]+(satir+1).ToString()).Interior.Pattern = Excel.XlPattern.xlPatternSolid;
sutun+=1;
ex.Cells[satir+1,sutun]=sat[sut.ColumnName].ToString();
}
}
ex.Visible=true;
}
}
}
