아래 코드를 사용하여 DataGridView
의 데이터를 복사 한 다음 Excel 파일에 붙여 넣습니다. 그것은 거의 모든 시스템에서 잘 작동하지만, 생산에 몇 기계, 그것은 검은 색 도트 그림으로 붙여 넣습니다Worksheet.PasteSpecial 비트 맵 이미지로 데이터 붙여 넣기
(나는 그것이 추측이 엑셀 파일에서이 결과를 얻을 수
private void copyAlltoClipboard()
{
//to remove the first blank column from datagridview
dataGridView1.RowHeadersVisible = false;
dataGridView1.SelectAll();
DataObject dataObj = dataGridView1.GetClipboardContent();
if (dataObj != null)
Clipboard.SetDataObject(dataObj);
}
private void button3_Click_1(object sender, EventArgs e)
{
copyAlltoClipboard();
Microsoft.Office.Interop.Excel.Application xlexcel;
Microsoft.Office.Interop.Excel.Workbook xlWorkBook;
Microsoft.Office.Interop.Excel.Worksheet xlWorkSheet;
object misValue = System.Reflection.Missing.Value;
xlexcel = new Excel.Application();
xlexcel.Visible = true;
xlWorkBook = xlexcel.Workbooks.Add(misValue);
xlWorkSheet = (Excel.Worksheet)xlWorkBook.Worksheets.get_Item(1);
Excel.Range CR = (Excel.Range)xlWorkSheet.Cells[1, 1];
CR.Select(); // CR is a COM Object
// WorkSheet.PasteSpecial(object,object,object,object,object);
xlWorkSheet.PasteSpecial(CR, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, true);
}
데이터를 비트 맵 표현으로 변환). 이것은 일부 시스템에 붙여 넣 것입니다 :
내가 기능 PasteSpecial()
를 사용했습니다. 그러나 그때 그것은 어떤 기계에서도 어떤 것도 복사하지 않을 것입니다. 나는 여기서 무엇이 잘못 될지 확신하지 못한다.
제대로 작동하고 작동하지 않는 컴퓨터에서 구성 측면에서 차이점을 찾을 수 없습니다. 이것을 처리하고 모든 컴퓨터에서 그림 대신 데이터를 표시하는 방법에 대한 아이디어가 있으십니까?