Hallo Leute,
ich habe das folgende Anliegen. Ich habe eine List mit mehreren Einträgen, welche jeweils aus mehreren Elementen bestehen.
List<Auto> Autoliste = new List<Auto>;
Autoliste enthält jeweils: Marke, Modell und Variante
Mein aktueller Code um die Excelliste zu füllen lautet wie folgt:
public partial class MainForm
{
public void ProtokollToolStripMenuItemClick(object sender, EventArgs e)
{
//Deklaration der einzelnen Variablen
Excel.Application ExcelAnwendung;
Excel._Workbook ExcelArbeitsmappe;
Excel._Worksheet ExcelArbeitsblatt;
try
{
//Excel starten
ExcelAnwendung = new Excel.Application();
ExcelAnwendung.Visible = true;
//Neues Arbeitsblatt anlegen
ExcelArbeitsmappe = (Excel._Workbook)(ExcelAnwendung.Workbooks.Add(Missing.Value));
ExcelArbeitsblatt = (Excel._Worksheet)ExcelArbeitsmappe.ActiveSheet;
//Alle Autos in der Exceltabelle auflisten
int countplus1 = 0;
int countplus4 = 0;
foreach (Auto A in Autoliste)
{
//Zeilenabstand einstellen
countplus1 += 1;
countplus4 += 4;
//Liste füllen
ExcelArbeitsblatt.Cells[3 + countplus4, 2] = "Marke:";
ExcelArbeitsblatt.Cells[3 + countplus4 + 1, 2] = "Modell:";
ExcelArbeitsblatt.Cells[3 + countplus4 + 2, 2] = "Variante:";
ExcelArbeitsblatt.Cells[3 + countplus4, 3] = A.Marke;
ExcelArbeitsblatt.Cells[3 + countplus4 + 1, 3] = A.Modell;
ExcelArbeitsblatt.Cells[3 + countplus4 + 2, 3] = A.Variante;
}
}
}
}
Die Liste in Excel sieht beispielhaft wie folgt aus:
Marke: Audi
Modell: A3
Variante: Cabrio
Marke: Audi
Modell:A4
Variante: Limousine
Marke: VW
Modell: Golf
Variante: Kombi
Marke: Audi
Modell: A4
Variante: Kombi
Die Excelliste möchte ich aber wie folgt aufbauen:
Marke: Audi
...Modell: A3
......Variante: Limousine
....................Kombi
....................Schrägheck
...Modell: A4
......Variante: Limousine
....................Kombi
Marke: VW
...Modell: Golf
..............usw.
Kann mir jemand erklären wie man das angeht oder mal ein Beispielcode posten wie man da vorgeht? Ich wollte es mit try und catch versuchen, bin aber nicht wirklich weiter gekommen.
Vielen Dank für eure Hilfe
Hallo,
du kannst per LINQ die Liste zunächst aufbereiten und danach in Excel übernehmen. Schau mal hier Gruppieren von Abfrageergebnisse
Grüße
**:::