Hallo liebes Forum,
ich arbeite im Moment viel mit Excel und VBA. Mittlerweile ist aus einer reinen Pivottabelle unserer Verkaufszahlen ein richtiges Programm geworden. Mit Eingabemasken, Dashboards und einer umfangreichen Programmlogik hat sich das ganze inzwischen so weit aufgebläht, dass man merkt, dass Excel dafür eigentlich nicht mehr gemacht ist. Vor allem die Wartezeiten während der Datenaufbereitung sind mit 5-10 Sekunden sehr lang.
Bisher habe ich dagegen gesteuert, indem ich den Programmcode verbessert habe und z.B. soweit möglich mit Arrays im Speicher statt mit Tabellenzellen arbeite. Aber ich bin an den Grenzen meinen Programmierkenntnisse angelangt und einige Programmabläufe dauern nun mal seine Zeit.
Nun überlege ich, das ganze mit MS Visual Studio in WPF auf Basis von VB umzusetzen und erhoffe mir davon einen deutlichen Geschwindigkeitsvorteil.
Das wäre dann auch schon meine erste Frage und einer der Gründe für diesen Post:
Kann man erwarten, dass ein Programm in VB deutlich schneller arbeitet als Excel VBA?
Die weiteren Fragen wären:
Wie setzt man das am besten um?
Meine Datenbasis auf der alles aufbaut ist ein Export aus SAP in Form einer Excel-Tabelle. Würde man die als Datei nehmen und mit VB dann darauf zugreifen? Oder würde man die ganze Tabelle beim Programmstart in den Speicher einlesen und von da aus damit arbeiten? Die letzte Methode funktioniert mit Excel VBA nur bedingt, da ein Array und seine Verwandten Dictionary und Collections bei der Datenmanipulation Beschränkungen unterliegen was z.B. das Entfernen, Hinzufügen, Filtern oder Sortieren von Datensätzen angeht.
Oder würde man mit so einer Art Query - also einer Datenbankabfrage - arbeiten in der Art von "Excel-Sheet, gib mir mal alle Verkäufe von 2016 für das Verkaufsgebiet Deutschland des Mitarbeiters Müller"?
Welche Optionen bietet VB, um große Datensätze schnell zu verwalten?
Letzte Frage (zumindest für jetzt mal):
In Excel ist es sehr komfortabel, die Daten ansprechend in einem Dashboard darzustellen. Hauptsächlich arbeite ich da mit Verbund-Diagrammen aus gestapelten Säulen und Linien.
Gibt es diese Optionen auch in VB?
Danke schon mal!!
Mick
ich arbeite im Moment viel mit Excel und VBA. Mittlerweile ist aus einer reinen Pivottabelle unserer Verkaufszahlen ein richtiges Programm geworden. Mit Eingabemasken, Dashboards und einer umfangreichen Programmlogik hat sich das ganze inzwischen so weit aufgebläht, dass man merkt, dass Excel dafür eigentlich nicht mehr gemacht ist. Vor allem die Wartezeiten während der Datenaufbereitung sind mit 5-10 Sekunden sehr lang.
Bisher habe ich dagegen gesteuert, indem ich den Programmcode verbessert habe und z.B. soweit möglich mit Arrays im Speicher statt mit Tabellenzellen arbeite. Aber ich bin an den Grenzen meinen Programmierkenntnisse angelangt und einige Programmabläufe dauern nun mal seine Zeit.
Nun überlege ich, das ganze mit MS Visual Studio in WPF auf Basis von VB umzusetzen und erhoffe mir davon einen deutlichen Geschwindigkeitsvorteil.
Das wäre dann auch schon meine erste Frage und einer der Gründe für diesen Post:
Kann man erwarten, dass ein Programm in VB deutlich schneller arbeitet als Excel VBA?
Die weiteren Fragen wären:
Wie setzt man das am besten um?
Meine Datenbasis auf der alles aufbaut ist ein Export aus SAP in Form einer Excel-Tabelle. Würde man die als Datei nehmen und mit VB dann darauf zugreifen? Oder würde man die ganze Tabelle beim Programmstart in den Speicher einlesen und von da aus damit arbeiten? Die letzte Methode funktioniert mit Excel VBA nur bedingt, da ein Array und seine Verwandten Dictionary und Collections bei der Datenmanipulation Beschränkungen unterliegen was z.B. das Entfernen, Hinzufügen, Filtern oder Sortieren von Datensätzen angeht.
Oder würde man mit so einer Art Query - also einer Datenbankabfrage - arbeiten in der Art von "Excel-Sheet, gib mir mal alle Verkäufe von 2016 für das Verkaufsgebiet Deutschland des Mitarbeiters Müller"?
Welche Optionen bietet VB, um große Datensätze schnell zu verwalten?
Letzte Frage (zumindest für jetzt mal):
In Excel ist es sehr komfortabel, die Daten ansprechend in einem Dashboard darzustellen. Hauptsächlich arbeite ich da mit Verbund-Diagrammen aus gestapelten Säulen und Linien.
Gibt es diese Optionen auch in VB?
Danke schon mal!!
Mick