myCSharp.de - DIE C# und .NET Community
Willkommen auf myCSharp.de! Anmelden | kostenlos registrieren
 
 | Suche | FAQ

» Hauptmenü
myCSharp.de
» Startseite
» Forum
» FAQ
» Artikel
» C#-Snippets
» Jobbörse
» Suche
» Regeln
» Wie poste ich richtig?
» Forum-FAQ

Mitglieder
» Liste / Suche
» Wer ist wo online?

Ressourcen
» openbook: Visual C#
» openbook: OO
» Microsoft Docs

Team
» Kontakt
» Übersicht
» Wir über uns

» myCSharp.de Diskussionsforum
Du befindest Dich hier: Community-Index » Diskussionsforum » Entwicklung » Office-Technologien » Excel Tabelle an Inhalt anpassen
Letzter Beitrag | Erster ungelesener Beitrag Druckvorschau | Thema zu Favoriten hinzufügen

Antwort erstellen
Zum Ende der Seite springen  

Excel Tabelle an Inhalt anpassen

 
Autor
Beitrag « Vorheriges Thema | Nächstes Thema »
bmw2001 bmw2001 ist männlich
myCSharp.de-Mitglied

Dabei seit: 04.08.2019
Beiträge: 5


bmw2001 ist offline

Excel Tabelle an Inhalt anpassen

Beitrag: beantworten | zitieren | editieren | melden/löschen       | Top

Hallo,

ich benutze Excel Interop um Datan aus einer Datenbank in mein Dokument einzufügen. Jetzt stehe ich vor dem Problem, dass ich so eine Art Tabelle brauche, damit der User nach Größe oder Name sortieren kann. Normalerweise kann man ja mit dem Cursor die Tabellengröße anpassen (Siehe Anhang).
Gibt, es einen Befehl, womit ich das je nach der Größe meiner Datatable anpassen kann bzw wie legt man so eine Tabelle fest?

Aktuell kopiere ich einfach ein altes sheet, lösche die Inhalte und füge die neuen Inhalten an denselben Positionen ein, jedoch ist manchmal die Tabelle zu groß oder zu klein.
Ich hoffe ihr könnt mir helfen

C#-Code:
DataTable outputTable = ExportDataFromSQLServer(connectionString, queryString);


            for (int i = 8; i < 300; i++)
            {
                for (int j = 1; j <=14 ; j++)
                {
                    xlRange.Cells[i, j].Value2 = "";
                }
            }

            for (int i = 1; i <= outputTable.Rows.Count; i++)
            {
                for (int j = 1; j <= outputTable.Columns.Count; j++)
                {
                        xlRange.Cells[i + 7, j].Value2 = outputTable.Rows[i - 1][j - 1];
                }
            }

bmw2001 hat dieses Bild (verkleinerte Version) angehängt:
Unbenannt.png
Volle Bildgröße

19.08.2019 09:28 E-Mail | Beiträge des Benutzers | zu Buddylist hinzufügen
Taipi88 Taipi88 ist männlich
myCSharp.de-Mitglied

avatar-3220.jpg


Dabei seit: 02.02.2010
Beiträge: 989
Entwicklungsumgebung: VS 2010
Herkunft: Mainz


Taipi88 ist offline

Beitrag: beantworten | zitieren | editieren | melden/löschen       | Top

Hi,

ich mag's zwar selbst nicht machen - aber als Tipp zur Selbsthilfe:
Aktiviere die Entwicklungsfunktionen in Excel - finde das Tool zur Makroaufzeichnung - starte die Aufzeichung - designe irgendeine Tabelle wie du sie gerne haben möchtest - dann kannst du sehr simpel den VBA-Code in C# übersetzen und damit deinen bestehenden Code ergänzen.

LG
19.08.2019 10:08 E-Mail | Beiträge des Benutzers | zu Buddylist hinzufügen
bmw2001 bmw2001 ist männlich
myCSharp.de-Mitglied

Dabei seit: 04.08.2019
Beiträge: 5

Themenstarter Thema begonnen von bmw2001

bmw2001 ist offline

Beitrag: beantworten | zitieren | editieren | melden/löschen       | Top

Cool, wusste garnicht dass es sowas gibt, danke!
19.08.2019 15:28 E-Mail | Beiträge des Benutzers | zu Buddylist hinzufügen
Palladin007 Palladin007 ist männlich
myCSharp.de-Mitglied

Dabei seit: 03.02.2012
Beiträge: 1.209
Entwicklungsumgebung: Visual Studio 2017
Herkunft: NRW


Palladin007 ist online

Beitrag: beantworten | zitieren | editieren | melden/löschen       | Top

Schau dir Mal  ClosedXML an.

Das Framework bietet eine mMn. sehr intuitive Schnittstelle zu OpenXML. Das offizielle OpenXML-Framework ist zwar sehr viel angenehmer als Interop, aber immer noch schrecklich, ClosedXML spart da sehr viel Arbeit ein.

Das, was Du haben willst, habe ich ohne groß Doku lesen ziemlich schnell heraus finden können, nur indem ich mir die verfügbaren Methoden und Properties angeschaut habe.
19.08.2019 23:07 Beiträge des Benutzers | zu Buddylist hinzufügen
Baumstruktur | Brettstruktur       | Top 
myCSharp.de | Forum Der Startbeitrag ist älter als 3 Monate.
Der letzte Beitrag ist älter als 3 Monate.
Antwort erstellen


© Copyright 2003-2019 myCSharp.de-Team | Impressum | Datenschutz | Alle Rechte vorbehalten. | Dieses Portal verwendet zum korrekten Betrieb Cookies. 13.12.2019 14:58