C# [Excel Vorlage] Daten zwischen Tabellen übergeben

PapstRatze

Lt. Junior Grade
Registriert
Aug. 2008
Beiträge
436
Hey ho,

brauch mal wieder Hilfe, wie schrecklich :D. Ich versuche gerade einem Freund zu helfen indem ich ein paar Arbeitsabläufe in seiner Firma automatisiere. Da irgendwie alle Mitarbeiter Excel wie bescheuert lieben, muss ich dafür in diesem Format bleiben. (Ein komplettes Programm für eine Firma könnte ich eh nicht schreiben, aber halt zumindestens ein paar der vielen doppelten Eingaben die zu tätigen sind minimieren)

Dafü erstelle ich mit VisualStudio Excel(2007) Vorlagen...

Gerade geht es um eine Dokumentation, dort müssen einige Daten erfasst werden, das hab ich auch alles fein säuberlich hinbekommen und in eine nette Klasse gepackt. Jetzt möchte ich auf Tabellenblatt 1 (wo ich die Daten eingegeben habe) auf einen Button klicken und die restlichen 4 Sheets sollen dann automatisch befüllt werden und da ist dass Problem...

... Leider habe ich noch nicht so viel mit Excel in Verbindung mit C# gearbeitet und die einzige Mehtode zum Befüllen einer Zelle aus dem Programmcode heraus (die ich kenne) ist Cells[X,Y] = ... Leider kennt Tabelle 2 nichts von Tablle 1 und jetzt die Frage (die ist wenigstens kurz)

Wie kann ich aus Tabelle1 Daten an Tabelle2 übergeben???

Ich bedanke mich für die Konstruktiven Vorschläge die kommen werden.:evillol:
 
Zuletzt bearbeitet:
eifnach mit:
sheets("Tabelle2").Range(cells(1,1),cells(Z,Z)) = sheets("Tabelle1").Range(cells(1,1),cells(Z,Z))

wobei 1,1 die Zelle oben links definiert und Z,Z die letzte Zelle unten Rechts definiert.
 
hmm leider funktioniert das nicht so ganz.
du meinst aber schon Microsoft.Office.Interop.Excel.Sheets oder?
Ergänzung ()

So ich habe den Anfang dann doch selbst gefunden und denke mal wieder oh wie einfach :P

einfach:
z.B.

Projektname.Globals.TabelleX.Cells ...

Leider habe ich jetzt noch ein kleines Problem mit meiner Klasse die nicht public ist, aber das werde ich schon hinbekommen ;)
 
Es geht fast noch einfacher.
oSheet = (Excel.Worksheet) oWB.Sheets[index];

oWB = Excel.Workbook
index = index des gewünschten Arbeitsblatts

dann kannst du wie gewünscht mit .Cells() drauf zugreifen.
 
Zurück
Oben