Anzeige
Archiv - Navigation
276to280
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
276to280
276to280
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Spalten sortieren

Spalten sortieren
02.07.2003 17:14:57
AndreasH
Hallo,
ich habe einige Tabellen, die ich alle in ein einziges sheet kopieren möchte.
Mein Problem ist, dass die unterschiedlichen Tabellen zwar ähnliche Daten
enthalten aber komplett unterschiedlich sortiert sind.
Um nicht für jedes einzelne Sheet ein Macro zu schreiben, war meine Idee die
benötigen Daten in ein Datenfeld einzulesen (Datenfeld = Range("A1:AB500"))
und anschliessend die Spalten einzeln wieder auszulesen. Also Spalte1 = Datenfeld(7), Spalte2 = Datenfeld(13),...
Ist das irgendwie möglich ?
Danke,
Andreas
P.S. Möchte die Zellen ungern einzeln auslesen, da es sich um recht viele Daten handelt.

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Spalten sortieren
03.07.2003 11:11:36
AndreasH
Vielen Dank ihr beiden,
leider funktioniert beides nicht wie gewünscht. Entweder lese ich jede Zelle einzeln
ein (was ich nicht möchte), oder aber - in andre's Fall - funktioniert das zwar für
einzelne Spalten, nicht aber wenn ich mehrere Spalten auf einmal einlesen und einzelne
Spalten ausgeben möchte.
Hat noch jemand eine Idee ?
In kurz nochmal ein Beispiel: Ich möchte z.B. Spalten A:E AUF EINMAL einlesen, und
danach nur Spalte B und D ausgeben.
Gruesse,
Andreas

AW: Spalten sortieren
03.07.2003 20:59:40
andre
hallo andreas,
also, mehrere spalten bekommst du damit rein. auslesen musst du aber jede zelle einzeln.

Sub test()
Dim a
a = Array(Sheets("tabelle1").Range("a1:c7").Value)
For i = 1 To 7
Sheets("tabelle1").Range("a" & i + 7).FormulaArray = a(1)(i, 3)
Next
End Sub

was hast du denn eigentlich davon, wenn du die daten vorübergehend in ein array gibst?
es geht auch so:

Sub test2()
Sheets("tabelle1").Range("a8:a14").Value = _
Sheets("tabelle1").Range("c1:c7").Value
End Sub


Sub test3()
Sheets("tabelle1").Range("d:d").Value = _
Sheets("tabelle1").Range("c:c").Value
End Sub

gruss andre

Anzeige
AW: Spalten sortieren
02.07.2003 18:16:53
andre
hallo andreas,
in etwa so:
Option Base 1
Public

Sub test()
Dim a
a = Array(Sheets("tabelle1").Range("a1:a7").Value)
Sheets("tabelle1").Range("b1:b7").FormulaArray = a(1)
End Sub

warum excel hier ein verschachteltes array bildet weiss ich allerdings nicht - schaue mal in die überwachung von "a"
gruss andre

AW: Spalten sortieren
02.07.2003 18:11:47
Antworter
Hallo Andreas,
vielleicht ein Ansatz (in Array einlesen):
Private Const Pfad = "C:\Eigene Dateien\TestData.xls"
Private Const Blatt = "Tabelle1"

Sub ExcelSheetToArray()
Dim xlMappe As Object
Set xlMappe = GetObject(Pfad)
MaxRows = xlMappe.Worksheets(Blatt).Cells.SpecialCells(11).Row
MaxCols = xlMappe.Worksheets(Blatt).Cells.SpecialCells(11).Column
ReDim x(MaxRows, MaxCols)
For RowIndex = 1 To MaxRows
For ColIndex = 1 To MaxCols
x(RowIndex, ColIndex) = xlMappe.Worksheets(Blatt).Cells(RowIndex, ColIndex).Value
Next ColIndex
Next RowIndex
xlMappe.Parent.Quit
Set xlMappe = Nothing
MsgBox "Der Inhalt der Zelle A1 lautet: " & vbCrLf & x(1, 1)
End Sub

beim Auslesen entsprechend)
Gruß Antworter

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige