Top-Themen

Aktuelle Themen (A bis Z)

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit
GELÖST

Probleme mit mehrdimensionalen Arrays in VB.NET

Frage Entwicklung Visual Studio

Mitglied: MarcoBorn

MarcoBorn (Level 1) - Jetzt verbinden

06.03.2014 um 13:14 Uhr, 3666 Aufrufe, 10 Kommentare

Hallo Forum,
ich versuche gerade, in VB.NET ein mehrdimensionales Array zu definieren, dann mit Werten zu füllen und anschließend diese an Excel zu übergeben. Ziel ist in Excel eine Tabelle, die 6 Spalten enthält, wobei die Zahl der Zeilen variieren kann. Aus Performancegründen will ich nicht die Werte einzeln in die Excel-Zellen schreiben, sondern das gesamte Array mit einem einzelnen Befehl.

Folgenden Code habe ich dazu ausprobiert:

Dim myArray() as Object
For i = 1 to Anzahl
ReDim Preserve myArray(Anzahl, Anzahl, Anzahl, Anzahl, Anzahl, Anzahl)
Hilfsarray1(i) = Variable1
Hilfsarray2(i) = Variable2
Hilfsarray3(i) = Variable3
Hilfsarray4(i) = Variable4
Hilfsarray5(i) = Variable5
Hilfsarray6(i) = Variable6
myArray() = (Hilfsarray1(i), Hilfsarray2(i), Hilfsarray3(i), Hilfsarray4(i), Hilfsarray5(i), Hilfsarray6(i))
Next
xlApp.Range(Cells(1, 1), Cells(Anzahl, 6)) = myArray


Variable1 bis Variable6 stehen für jeweils 6 Werte, die in die entsprechenden Spalten geschrieben werden. Irgendwo ist aber der Wurm drin, weil das Makro mit nichtssagenden Fehlermeldungen abbricht. Ich bin hinsichtlich Arrays in VB.NET noch völlig unerfahren und für jeden Hinweis dankbar.


Viele Grüße,
M. Born
Mitglied: emeriks
LÖSUNG 06.03.2014, aktualisiert um 15:49 Uhr
Erstmal: Eine einfache Tabelle hat nur 2 Dimensionen: Zeilen und Spalten

Versuchs mal so:

01.
Dim Rows As New List(Of Array) 
02.
Rows.Add({"a", "b", "c", "d", "e", "f"}) 
03.
 
04.
Rows.Add({Var1, Var2, Var3, Var4, Var5, Var6}) 
05.
 
06.
Dim RowArray() = Rows.ToArray
E.
Bitte warten ..
Mitglied: MarcoBorn
06.03.2014 um 13:45 Uhr
Hallo emeriks,
in Zeile 2 meckert mein Compiler folgendes an: Komma, ")" oder gültige Ausdrucksfortsetzung erwartet.
Denselben Fehler erhalte ich für Zeile 4, wenn ich Zeile 2 auskommentiere.

Ist da noch was anderes falsch?

M. Born
Bitte warten ..
Mitglied: emeriks
06.03.2014, aktualisiert um 13:47 Uhr
Reden wir tatsächlich von VB.Net oder etwa VBA?
Bitte warten ..
Mitglied: MarcoBorn
06.03.2014 um 13:52 Uhr
Von VB.NET. Ich programmiere in SharpDevelop eine DLL, die dann auch auf Excel zugreift.
Bitte warten ..
Mitglied: emeriks
06.03.2014 um 13:57 Uhr
Ah, ok. Da kann ich dann nicht helfen. Diese IDE habe ich noch nie benutzt.

Aber im Prinzip musst Du jetzt nur rausfinden, wie die entsprechende Syntax in dieser IDE aussehen muss.

E.
Bitte warten ..
Mitglied: MarcoBorn
06.03.2014 um 14:02 Uhr
Das ist dieselbe Syntaxt wie in Visual Studio. Ist quasi eine OpenSource-Umsetzung einer IDE für .NET.
Bitte warten ..
Mitglied: emeriks
06.03.2014 um 14:16 Uhr
Na offensichtlich nicht. Der von mir genannte Code wird bei mir in der IDE (VS 2012) jedenfalls nicht angemeckert.

Vielleicht Problem mit Copy&Paste? Schreib mal von Hand ab, vielleicht hilft's.

E.
Bitte warten ..
Mitglied: MarcoBorn
06.03.2014 um 14:51 Uhr
Hat leider auch nicht geholfen. Aber Dein Hiweis, dass Excel nur 2 Dimensionen kennt, war wahrscheinlich der richtige Tipp. Ich brauch ja auch kein 6-dimensionales Array, sondern eine Tabelle mit 6 Spalten. Die Zahl der ausgeworfenen Fehler nimmt schon ab....
Bitte warten ..
Mitglied: colinardo
LÖSUNG 06.03.2014, aktualisiert um 15:50 Uhr
Hallo M.Born,
für die Zuweisung an einen Range in Excel brauchst du ein reines 2-Dimensionales String-Array. Es dürfen keine geschachtelten Array's sein.
Als Beispiel siehe dazu: http://stackoverflow.com/questions/12545054/array-to-excel-using-vb-net

Grüße Uwe
Bitte warten ..
Mitglied: MarcoBorn
06.03.2014 um 15:48 Uhr
Folgender Code funktioniert:

Dim myArr(länge, 6) As Object
For i = 1 to Anzahl
myArr(i, 0) = Variable1
myArr(i, 1) = Variable2
myArr(i, 2) = Variable3
myArr(i, 3) = Variable4
myArr(i, 4) = Variable5
myArr(i, 5) = Variable6
Next
xlApp.Range(Cells(1, 1), Cells(UBound(myArr, 1), UBound(myArr, 2))) = myArr

Danke für den Wink mit dem Zaunpfahl, emeriks.
Bitte warten ..
Ähnliche Inhalte
PHP
Mehrdimensionales arrays durchsuchen
Frage von pcguyPHP4 Kommentare

Hallo zusammen Ich möchte ein Mehrdimensionales arrays vergeichen und komme nicht weiter. Da ich noch nicht so erfahren bin, ...

Visual Studio
Structure von Arrays in VB.NET
gelöst Frage von MarcoBornVisual Studio4 Kommentare

Hallo Forum, ich habe 2 Fragen zum Thema Structures in VB.NET: 1. Ist es möglich, in VB.NET eine Structure ...

PHP
Aus Arrays neue Arrays erzeugen!
gelöst Frage von FunkerVogtPHP8 Kommentare

Hallo Gemeinde, ich hoffe Ihr könnt mir bei meiner Problematik helfen und meinen kleinen gordischen Knoten im Kopf lösen. ...

Visual Studio
Verschachtelte Arrays
gelöst Frage von MarcoBornVisual Studio19 Kommentare

Hallo Forum, ich habe in VB.NET 6 Arrays, die alle dieselbe Länge, aber unterschiedliche Datentypen haben. Array1 ist vom ...

Neue Wissensbeiträge
Viren und Trojaner

Deaktivierter Keylogger in HP Notebooks entdeckt

Information von bitcoin vor 13 StundenViren und Trojaner1 Kommentar

Ein Grund mehr warum man Vorinstallationen der Hersteller immer blank bügeln sollte Der deaktivierte Keylogger findet sich im vorinstallierten ...

Router & Routing

Lets Encrypt kommt auf die FritzBox

Information von bitcoin vor 17 StundenRouter & Routing

In der neuesten Labor-Version der FB7490 integriert AVM unter anderem einen Let's Encrypt Client für Zugriffe auf das Webinterface ...

Internet

Was nützt HTTPS, wenn es auch von Phishing Web-Seiten genutzt wird

Information von Penny.Cilin vor 3 TagenInternet17 Kommentare

HTTPS richtig einschätzen Ob man eine Webseite via HTTPS aufruft, zeigt ein Schloss neben der Adresse im Webbrowser an. ...

Webbrowser

Bugfix für Firefox Quantum released - Installation erfolgt teilweise nicht automatisch!

Erfahrungsbericht von Volchy vor 4 TagenWebbrowser8 Kommentare

Hallo zusammen, gem. dem Artike von heise online wurde mit VersionFirefox 57.0.1 sicherheitsrelevante Bugs behoben. Entgegen der aktuellen Veröffentlichung ...

Heiß diskutierte Inhalte
Batch & Shell
Trusted Sites für alle User auf dem PC einpflegen
Frage von xXTaKuZaXxBatch & Shell12 Kommentare

Aufgabestellung: Es sollen auf 1 PC (bzw. mehreren PCs) vertrauenswürdige Sites per Powershell eingetragen werden, die für alle User ...

Voice over IP
Telefonstörung - Ortsrufnummern kein Verbindungsaufbau
Frage von Windows10GegnerVoice over IP10 Kommentare

Hallo, sowohl bei uns als auch beim Opa ist es über VoIP nicht möglich Ortsrufnummern anzurufen. Es kommt nach ...

Vmware
DOS 6.22 in VMWare mit CD-ROM
gelöst Frage von hesperVmware10 Kommentare

Hallo zusammen! Ich hab ein saublödes Problem. Es ist eine VMWare mit DOS 6.22 zu erstellen auf dem ein ...

Cloud-Dienste
PIM als SaaS Nutzungsgebühr
Frage von vanTastCloud-Dienste8 Kommentare

Moin, wir haben uns ein PIM (Product Information Management) nach unseren Ansprüchen für viel Geld als SaaS-Lösung bauen lassen. ...