Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1876to1880
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Benutzerdefin Datentyp aus tab füllen

Benutzerdefin Datentyp aus tab füllen
04.04.2022 13:54:36
mischarichter
Hallo,
ich will in einen benutzerdefinierten Datentyp Daten aus einer Tabelle einlesen.
Die Daten stehen in der Spalte A und C ab Zeile 1, die Anzahl n ist dynamisch, das hab ich geklärt.
Es sind String-Werte.
Ziele im Array sind myarr(1 to n).feld1 und myarr(1 to n ).feld2.
Wie bekomme ich die Daten rein ohne eine ForNext-Schleilfe? Die dauert nämlich über eine Minute bei den 10.000 Datensätzen, ich wills aber "schwupps".
Mischa Richter

12
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Benutzerdefin Datentyp aus tab füllen
04.04.2022 14:09:16
{Boris}
Hi,
pack den 3-spaltigen Bereich in ein Datenfeld:
Dim arr
arr = Range("A1:C10000")
VG, Boris
AW: Benutzerdefin Datentyp aus tab füllen
04.04.2022 15:09:31
onur
Über eine Minute für 10.000 Zeilen ? Muss wohl an deinem Code liegen.
Mein Code braucht dafür 0,085 sec.
https://www.herber.de/bbs/user/152231.xlsm
AW: Benutzerdefin Datentyp aus tab füllen
04.04.2022 16:02:09
mischarichter
@ Boris: das geht nicht, da es kein zusammenhängendes Range-Objekt ist. Sondern nur Spalte A und Spalte C.
Mischa Richter
Das weiß ich...
04.04.2022 16:25:07
{Boris}
Hi,
...daher hatte ich auch bewusst geschrieben, dass Du alle 3 Spalten nimmst. Ignorier doch einfach die Daten in der mittleren Spalte in dem Datenfeld.
VG, Boris
Anzeige
AW: Benutzerdefin Datentyp aus tab füllen
04.04.2022 18:01:52
onur
Und wieso ignorierst du meine Antwort?
geht nicht so fix
05.04.2022 08:15:15
mischarichter
ich will deinen Code erstmal testen und mit meinem vergleichen, um den Performance-Unterschied zu verstehen. Bei mir sind noch Typumwandlungen und Fehlerbehandlugnen dabei, die den Ablauf bremsen .....
Ich melde mich jedenfalls.
Mischa Richter
Mit Kanonen auf Spatzen*
04.04.2022 16:33:56
Yal
*: wobei diese Spruche zurzeit ein Bischen deplaziert wirken könnte...
Moin Mischa,

Sub test()
Dim Arr
Application.EnableEvents = False
Application.ScreenUpdating = False
Columns("C:C").Cut
Columns("B:B").Insert Shift:=xlToRight
Arr = Range("A1:B" & n)
Columns("C:C").Cut
Columns("B:B").Insert Shift:=xlToRight
Application.EnableEvents = True
Application.ScreenUpdating = True
End Sub
VG
Yal
Anzeige
AW: Benutzerdefin Datentyp aus tab füllen
04.04.2022 17:57:56
Herbert_Grom
Hallo Mischa, alte Socke,
ich denke mal, dass du "unser" Mischa bist, nicht wahr? Ich hoffe, alles gesund und munter in Thü! Schön, mal wieder was von dir zu lesen. Ich denke, dass man dir leichter helfen kann, wenn du eine Beispiel-Arbeitsmappe hochlädst. Probiers mal.
Servus
AW: Benutzerdefin Datentyp aus tab füllen
06.04.2022 09:08:01
mischarichter
Hallo Herbert, ja ich bins - aus dem schönen Thüringen. Hochladen geht hier an diesem Arbeitsplatz nicht so einfach, die EDV verhindert Uploads. Nur im HomeOffice kann ich das umgehen. .....
Bleib gesund!
AW: Benutzerdefin Datentyp aus tab füllen
06.04.2022 09:24:52
Herbert_Grom
Hi Mischa,
du kannst sie ja mir auch per eMail senden. Dann kann ich sie, bei Bedarf, hier hochladen. Aber "Rudi" hat dir ja schon perfekt geholfen, so dass das nun nicht mehr nötig ist. Aber evtl. beim nächsten Mal!
Bis dahin lass es dir gut gehen!
Servus
Anzeige
AW: Benutzerdefin Datentyp aus tab füllen
05.04.2022 09:39:40
Rudi
Hallo Mischa,
einfach mit 2 Arrays.

Sub mischa()
Dim arrIn, arrOUT(), i As Long
arrIn = Cells(1, 1).CurrentRegion
ReDim arrOUT(1 To UBound(arrIn), 1 To 2)
For i = 1 To UBound(arrIn)
arrOUT(i, 1) = arrIn(i, 1)
arrOUT(i, 2) = arrIn(i, 3)
Next
End Sub
0,28s für 500.000 Zeilen
Gruß
Rudi
AW: Benutzerdefin Datentyp aus tab füllen
06.04.2022 09:06:25
mischarichter
Das hat super geholfen, nur .CurrentRegion musste ich anpassen, da Leerzeilen drin waren in der Quelltabelle.
Danke.

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige