Live-Forum - Die aktuellen Beiträge
Datum
Titel
24.04.2024 19:29:30
24.04.2024 18:49:56
24.04.2024 17:19:09
Anzeige
Archiv - Navigation
896to900
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
896to900
896to900
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Werte aus einem Bereich auslesen

Werte aus einem Bereich auslesen
19.08.2007 11:40:00
ch
Hallo liebe Forumsmitglieder,
nach langem Suchen habe ich für mein "kleines" Problem keine Lösung gefunden.
Vielleicht kann mir ja einer helfen, das wäre echt nett :
Ich möchte die Werte, welches Textwerte sind und über Tabelle1 verstreut sind, und Leerzellen sind auch dazwischen, Aufgelistet in die erste Spalte der Tabelle2 geschrieben haben.
In der Auflistung möchte ich keine doppelten Einträge haben.
Ich kann es nicht, vielleicht habe ich auch einen Bericht überlesen.
Kann mir jemand bitte helfen.
Vielen Dank schon mal im voraus für eure Mühen.
Liebe Grüsse aus Rostock
Ch.

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Werte aus einem Bereich auslesen
19.08.2007 13:21:09
fcs
Hallo Ch.
hier mein Lösungsvorschlag
Gruß
Franz

Sub TexteZusammensuchen()
Dim wks1 As Worksheet, wks2 As Worksheet, Zelle As Range
Dim Zeile As Long
Set wks1 = Worksheets("Tabelle1")
Set wks2 = Worksheets("Tabelle2")
Application.ScreenUpdating = False
With wks2
'Alte werte in Spalte A Löschen
.Columns(1).Clear
'Spaltentitel eintragen
.Cells(1, 1).Value = "Einträge Tab1"
'Text aus allen Zellen mit Inhalt in SPalte A der Tabelle 2 eintragen
For Each Zelle In wks1.UsedRange
If Not IsEmpty(Zelle) Then
'        Zelle.Copy Destination:=.Cells(.Rows.Count, 1).End(xlUp).Offset(1, 0)
'oder
.Cells(.Rows.Count, 1).End(xlUp).Offset(1, 0) = Zelle.Text 'oder Zelle.Value
End If
Next
'Spalte A sortieren
.Columns(1).Sort key1:=.Cells(1, 1), Order1:=xlAscending, Header:=xlYes
'Doppelte löschen
For Zeile = .Cells(.Rows.Count, 1).End(xlUp).Row To 2 Step -1
If .Cells(Zeile, 1) = .Cells(Zeile - 1, 1) Then
.Rows(Zeile).Delete shift:=xlShiftUp
End If
Next
End With
Application.ScreenUpdating = True
wks2.Activate
End Sub


Anzeige
Ergänzung: für kleine Bereiche mit Formeln
19.08.2007 16:21:56
Christian
Hallo Ch. ,
kleine Ergänzung, damit auch nur Text aufgelistet wird:
https://www.herber.de/bbs/user/45196.xls
MfG Christian

Anzeige
AW: für kleine Bereiche mit Formeln
19.08.2007 16:30:00
Gerd
Hallo Ch.,
noch ein Vorschlag per VBA-Code.

Sub test()
Dim rngWerte As Range, vnt(), x As Long, Zelle As Range, y As Long
Dim wksQuelle As Worksheet, wksZiel As Worksheet
Set wksQuelle = ThisWorkbook.Worksheets("Tabelle1")
Set wksZiel = ThisWorkbook.Worksheets("Tabelle2")
wksziel.Columns(1).ClearContents
wksZiel.Cells(1, 1).Value = "Werte aus Tabelle1"
Set rngWerte = wksQuelle.UsedRange.SpecialCells(xlCellTypeConstants)
ReDim vnt(1 To rngWerte.Count, 1 To 1)
x = 1
For Each Zelle In rngWerte
y = 0
On Error Resume Next
y = WorksheetFunction.Match(CStr(Zelle.Text), vnt, 0)
On Error GoTo 0
If y = 0 Then
vnt(x, 1) = Zelle.Text
x = x + 1
End If
Next
With wksZiel
.Range(.Cells(2, 1), .Cells(UBound(vnt, 1) + 1, 1)).Value = vnt
.Columns(1).Sort key1:=.Cells(2, 1), header:=xlYes
End With
End Sub


Gruß Gerd

Anzeige
AW: Werte aus einem Bereich auslesen
20.08.2007 09:00:00
ch
Halllo lieber Christian,
lieber Gerd L und lieber fcs,
ich habe alle Tipps ausprobiert und alle funktionieren so wie ich es mir vorgesellt habe !
Echt Super. 1000 Dank.
Ich hätte nicht gedacht das sowas geht.
Naja Excel eben ! ....wenn man´s kann ;-)
Danke euch allen !
Ich hoffe ich kann mal was zurückgeben.
Gruß
ch

307 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige