Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Namen mischen

Forumthread: Namen mischen

Namen mischen
17.12.2022 21:35:37
Erich
Hallo,
ich möchte eine Namensliste der Spalte A durchmischen lassen. Schön wäre es, wenn eine neue Spalte A eingefügt werden würde, damit die ursprüngliche Liste erhalten bleibt und in der neuen Spalte A die Namen durchgemischt werden. Bitte als VBA-Lösung. :-) Danke.
Ich habe eine Tabelle mit Namen hochgeladen: https://www.herber.de/bbs/user/156802.xlsm
Freundliche Grüße
Erich
Anzeige

9
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Namen mischen
17.12.2022 23:51:05
Werni
Hallo Erich

Sub A_mischen()
Dim x As Long
x = Range("A100000").End(xlUp).Row
Application.ScreenUpdating = False
Range("B2").FormulaR1C1 = "=RAND()"
Range("B2").AutoFill Destination:=Range("B2:B" & x)
Range("B2:B" & x).Copy
Range("B2:B" & x).PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Application.CutCopyMode = False
ActiveWorkbook.Worksheets("Tabelle1").Sort.SortFields.Clear
ActiveWorkbook.Worksheets("Tabelle1").Sort.SortFields.Add2 Key:=Range( _
"B1:B53"), SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:= _
xlSortNormal
With ActiveWorkbook.Worksheets("Tabelle1").Sort
.SetRange Range("B2:B" & x)
.Header = xlNo
.MatchCase = False
.Orientation = xlTopToBottom
.SortMethod = xlPinYin
.Apply
End With
Columns("B:B").ClearContents
[A1].Select
Application.ScreenUpdating = True
End Sub
Gruss werni
Anzeige
AW: Funktioniert
18.12.2022 10:34:42
Erich
Hallo Onur, vielen Dank für deine Lösung!
Viele Grüße
Erich
AW: Namen mischen
18.12.2022 17:17:48
snb
Oder:

Sub M_snb()
With Sheet1.Cells(1).CurrentRegion.Offset(, 2)
.Value = "=rand()"
.Value = Evaluate("""=A""&index(rank(" & .Address & "," & .Address & "),)")
End With
End Sub

Anzeige
AW: Ein Beispiel
18.12.2022 10:36:44
Erich
Hallo Sulprobil,
danke für die Informationen. :-) Muss ich mir ausführlich anschauen.
Viele Grüße
Erich
AW: Namen mischen
18.12.2022 17:19:25
snb
Alternative:

Sub M_snb()
With Sheet1.Cells(1).CurrentRegion.Offset(, 2)
.Value = "=rand()"
.Value = Evaluate("""=A""&index(rank(" & .Address & "," & .Address & "),)")
End With
End Sub

Anzeige
AW: Namen mischen
19.12.2022 12:44:14
snb
Du fragst um random Sortieren.
Das hat MS leider in seine Sortierfunktionen vergessen.
In VBA geht das ganz leicht.

Sub M_snb()
Sheet1.Cells(1).CurrentRegion.Offset(, 2).Name = "snb"
[snb] = "=rand()"
[snb] = ["=a"&index(rank(snb,snb),)]
[snb] = [snb].Value
End Sub
Schau mal die angehängte Datei an.
https://www.herber.de/bbs/user/156825.xlsb
Anzeige
AW: Namen mischen
19.12.2022 14:39:13
Erich
Hallo snb,
vielen Dank für die Hilfe/Lösung. :-)
Viele Grüße
Erich
;

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige