Access VBA Text Spinner

Willi90

Grünschnabel
Hallo,

hat sich jemand schon mal mit dem Thema befasst und kann ggf. eine kleine Hilfestellung dazu abgeben ?

Text Spinner in PHP gibt es viele, sieht dann so ungefähr aus:
{wort1|wort2|wort3}text{wort4|wort5|word6}

Am Ende soll dann ein Text generiert werden welche zufällig ein Wort aus den {} nimmt:
Das | dient z.B. als Trennzeichen.

lg
 

Yaslaw

n/a
Moderator
Es gibt grad keine Funktionen. Ist aber nicht weiter schwer was zu basteln.
Mal ein schneller Wurf meinerseits

Visual Basic:
Public Function textSpinner(ByVal iText As String) As String
    textSpinner = iText
    'RegExp initialisieren um den String {..} zu finden
    Dim rx As Object: Set rx = CreateObject("VBScript.RegExp")
    rx.pattern = "\{([^\}]+)\}"
    rx.Multiline = True
    rx.Global = True
    If rx.Test(textSpinner) Then
        Dim mc As Object: Set mc = rx.Execute(textSpinner)
        'Von hinten nach vorne über die Treffer iterieren
        Dim i As Integer: For i = mc.count - 1 To 0 Step -1
            'Asuwahl in ein Array zerlegen
            Dim choices() As String: choices = Split(mc(i).SubMatches(0), "|")
            'Zufällig einer auswählen
            Dim rndItem As String: rndItem = choices(Int((UBound(choices) + 1) * Rnd))
            'String zusammensetzen
            textSpinner = Left(textSpinner, mc(i).firstIndex) & _
                rndItem & _
                Mid(textSpinner, mc(i).firstIndex + mc(i).Length + 1)
        Next i
    End If
End Function
 

Neue Beiträge