online 1
gast (50)

/ Forum / Tabellenkalkulation

TabellenkalkulationTabellenkalkulation

Fragevon inspiron8100 vom 15.02.2020, 16:46 Options

VBA: ist Zeichen vohanden oder nicht....

Hallo,
ich möchte mit 2 Button in einer Userform ein "-" oder ein "+" Zeichen in eine oder mehrere makierte Zellen anfügen.
zBsp. in mehere Zellen stet ein Wert "110" die markierten sollen dann in "110-" geändert werden.
Das funktioniert ja soweit mit folgendem Code:

Private Sub CommandButton1_Click() ' Minus setzen
Dim zelle As Range
For Each zelle In Selection
If Right(zelle, 1) = "+" Then GoTo Meldung
If Not Right(zelle, 1) = "-" Then zelle = zelle & "-"
Meldung: MsgBox "Error! Ein + ist vorhanden."
Next zelle
End Sub

Private Sub CommandButton2_Click() ' Plus setzen
Dim zelle As Range
For Each zelle In Selection
If Not Right(zelle, 1) = "+" Then zelle = zelle & "+"
Next zelle
End Sub

Mein Problem ist:
1. Wenn bereits ein "-" vohanden dann darf kein "+" angefügt sondern nur ersetzt werden. Dies möchte ich mit einer MsgBox anzeigen "soll der Wert geändert werden?" Ja/ Nein

2.habe ich mehrere Zellen (5) markiert kommt die MsgBox -Meldung 5mal. Ideal wäre 1 Meldung.

Hat jemand ein Tip?

Danke Mario


Antwort schreiben

Antwort 1 von Beverly vom 15.02.2020, 18:12 Options

Hi Mario,

vielleicht so

Private Sub CommandButton1_Click() ' Minus setzen
    Dim zelle As Range
    For Each zelle In Selection
        If Right(zelle, 1) = "+" Then
            MsgBox "Error! Ein + ist vorhanden."
        Else
            If Not Right(zelle, 1) = "-" Then zelle = zelle & "-"
        End If
    Next zelle
End Sub

Private Sub CommandButton2_Click() ' Plus setzen
    Dim zelle As Range
    Dim strFrage As String
    For Each zelle In Selection
        If Not Right(zelle, 1) = "+" Then
            If Right(zelle, 1) = "-" Then
                strFrage = MsgBox("Es ist ein '-' vohanden" & vbLf & "Ersetzen?", vbExclamation + vbYesNo, "Was soll getan werden")
                If strFrage = vbYes Then zelle = Left(zelle, Len(zelle) - 1) & "+"
            Else
                zelle = zelle & "+"
            End If
        End If
    Next zelle
End Sub


Bis später,
Karin

Ähnliche Themen

Trennzeichen sind zwei Zeichen
Tobi_80  27.03.2007 - 138 Hits - 2 Antworten

VBA Benutzername in MsgBoxs Titel
inspiron8100  18.02.2008 - 28 Hits - 1 Antwort

Zeichen für keinen Text
Meister2008  18.02.2008 - 57 Hits - 2 Antworten

Excel-VBA: Zeilenumbruch/Chr(10) ersetzen
ChrisWI05  04.03.2008 - 334 Hits - 2 Antworten

Hinweis

Diese Frage ist schon etwas älter, Sie können daher nicht mehr auf sie antworten. Sollte Ihre Frage noch nicht gelöst sein, stellen Sie einfach eine neue Frage im Forum..

Neue Einträge

Version: supportware 1.9.150 / 10.06.2022, Startzeit:Mon Jan 26 01:23:17 2026