Я пытаюсь переместить свои числа (двойной тип) в правую часть ячейки. Я беру все данные из таблицы данных и помещаю их в свою таблицу Excel
Таблица Excel состоит из 5 столбцов.В первой это строки, а остальные - числа типа int и double.Если в моей камере есть номер с комой, то номер справа, а цифры без комы слева.Я прочитал, я могу использовать что-то вроде этого -> myRange.FormatNumber.Но я не знаю, как я могу использовать это ...
try {
string path = Environment.GetFolderPath(Environment.SpecialFolder.Desktop);
saveFileDialog1.InitialDirectory = path;
saveFileDialog1.Title = "Als Excel Datei speichern";
saveFileDialog1.FileName = "";
saveFileDialog1.Filter = "Excel Files(2013)|*.xlsx|Excel Files(2003)|*.xls|Excel Files(2007)|*.xlsx";
if (saveFileDialog1.ShowDialog() != DialogResult.Cancel)
{
Cursor.Current = Cursors.WaitCursor;
Microsoft.Office.Interop.Excel.Application ExcelApp = new Microsoft.Office.Interop.Excel.Application();
ExcelApp.Application.Workbooks.Add(Type.Missing);
object[,] arr = new object[maximaleZeilenAnzahl, maximaleSpaltenAnzahl]; //Array erstellen
//Überschrift Tabelle Einzeln
for (int columnIndex = 0; columnIndex < dgvEinzeln.Columns.Count; columnIndex++)
{
arr[aktuelleExcelZeile, columnIndex] = dgvEinzeln.Columns[columnIndex].HeaderText;
}
aktuelleExcelZeile += 1;
//Tabelle Einzeln
for (int rowIndex = 0; rowIndex < dgvEinzeln.Rows.Count; rowIndex++)
{
for (int columnIndex = 0; columnIndex < dgvEinzeln.Columns.Count; columnIndex++)
{
arr[aktuelleExcelZeile, columnIndex] = dgvEinzeln.Rows[rowIndex].Cells[columnIndex].Value.ToString();
}
aktuelleExcelZeile++;
}
aktuelleExcelZeile += 5;
//Überschrift Tabelle Summe
for (int columnIndex = 0; columnIndex < dgvSumme.Columns.Count; columnIndex++)
{
arr[aktuelleExcelZeile, columnIndex] = dgvSumme.Columns[columnIndex].HeaderText;
}
aktuelleExcelZeile += 1;
//Tabelle Summe
for (int rowIndex = 0; rowIndex < dgvSumme.Rows.Count; rowIndex++)
{
for (int columnIndex = 0; columnIndex < dgvSumme.Columns.Count; columnIndex++)
{
arr[aktuelleExcelZeile, columnIndex] = dgvSumme.Rows[rowIndex].Cells[columnIndex].Value.ToString();
}
aktuelleExcelZeile++;
}
Range c1 = (Range)ExcelApp.Cells[1, 1];
Range c2 = (Range)ExcelApp.Cells[aktuelleExcelZeile, maximaleSpaltenAnzahl];
Range range = ExcelApp.get_Range(c1, c2);
range.Value = arr;
ExcelApp.ActiveWorkbook.SaveCopyAs(saveFileDialog1.FileName.ToString());
ExcelApp.ActiveWorkbook.Saved = true;
ExcelApp.Quit();
string filename = Path.GetFullPath(saveFileDialog1.FileName);
System.Diagnostics.Process.Start(filename);
}
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
throw;
}
finally
{
Cursor.Current = Cursors.Default;
}