AW: PQ Lösung
23.10.2019 15:36:30
Nepumuk
Hallo Fred,
alles klar, dann so:
Option Explicit
Public Sub Unikatliste()
Dim objDataObject As Object, objDictionary As Object
Dim strTemp As String
Dim avntTemp As Variant, vntItem As Variant
With Worksheets("Basis")
Call .Rows(9).AutoFilter(Field:=68, Criteria1:=">0")
With .AutoFilter.Range
Call Range(.Cells(2, 6), .Cells(.Rows.Count, 7)).Copy
End With
DoEvents
Set objDataObject = CreateObject(class:="new:{1C3B4210-F441-11CE-B9EA-00AA006B1A69}")
Call objDataObject.GetFromClipboard
strTemp = objDataObject.GetText
Set objDataObject = Nothing
.AutoFilterMode = False
End With
strTemp = Left$(strTemp, Len(strTemp) - 2)
avntTemp = Split(strTemp, vbCrLf)
Set objDictionary = CreateObject(class:="Scripting.Dictionary")
With objDictionary
For Each vntItem In avntTemp
.Item(Key:=Split(vntItem, vbTab)(0)) = vbNullString
.Item(Key:=Split(vntItem, vbTab)(1)) = vbNullString
Next
End With
With Worksheets("Main")
Call .Range(.Cells(9, 1), .Cells(.Rows.Count, 1)).ClearContents
.Cells(9, 1).Resize(objDictionary.Count, 1).Value = Application.Transpose(objDictionary.Keys)
End With
Set objDictionary = Nothing
End Sub
Gruß
Nepumuk