Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

VBA SelectionChance

Forumthread: VBA SelectionChance

VBA SelectionChance
20.04.2018 14:54:29
Patrick
Hallo zusammen,
ich scheitere leider an sage und schreibe an einem Zeilenumbruch in VBA.
Zur Datei:
Ich habe 2 Spalten, in denen bei Klick in eine Zelle eine Inputbox auftauchen soll. So weit so gut. Nun möchte ich aber, dass wenn bereits etwas in der Zelle enthalten ist, der Inhalt + Zeilenumbruch + Inhalt der Inputbox in der Zelle erfasst wird. Ist jedoch die Zelle, in die man klickt, frei, so soll ohne vorherigen Zeilenumbruch der Inhalt der Inputbox in diese Zelle geschrieben
Mein Code bisher:

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Not Intersect(Target, Range("L7:L1000")) Is Nothing Then
If Not Target.Count > 1 Then
ActiveSheet.Unprotect
Target = Target + vbNewLine _
+ InputBox("Bitte gib den Zwischenstand der Bearbeitung ein", "Inhalt", "Text")
ActiveSheet.Protect
' Ab hier ist Versuch zur korrekten Anzeige des Zeilenumbruches gestartet:
ElseIf Not Intersect(Target, Range("J7:J1000")) Is Nothing Then
If Not Target.Count > 1 Then
ActiveSheet.Unprotect
If Target  "" Then Target = Target + vbNewLine _
+ InputBox("Bitte gib das Datum / Uhrzeit des letzten Versuches ein", "Inhalt", "Datum /  _
Uhrzeit")
ActiveSheet.Protect
ElseIf Not Intersect(Target, Range("J7:J1000")) Is Nothing Then
If Not Target.Count > 1 Then
ActiveSheet.Unprotect
If Target = "" Then Target = InputBox("Bitte gib das Datum / Uhrzeit des letzten Versuches ein", _
_
"Inhalt", "Datum / Uhrzeit")
ActiveSheet.Protect
End If
End If
End If
End If
End Sub

Leider wird nun die Inputbox im Range("J7:J1000") gar nicht mehr angezeigt. Was habe ich falsch gemacht? Leider finde ich es nicht, zudem wird wahrscheinlich noch immer der Zeilenumbruch ein Problem machen.
Vielen Dank für Eure Hilfe!
Gruß,
Patrick
Anzeige

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: VBA SelectionChance
20.04.2018 15:05:22
Hajo_Zi
Hallo Patrick,
man sollte mit Einrückungen arbeiten. Macht den Code Übersichtlicher.
Option Explicit
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim StWert As String
If Not Intersect(Target, Range("L7:L1000")) Is Nothing Then
If Not Target.Count > 1 Then
ActiveSheet.Unprotect
StWert = InputBox("Bitte gib den Zwischenstand der Bearbeitung ein", _
"Inhalt", "Text")
If Target  "" Then
Target = Target + vbNewLine + StWert
Else
Target = StWert
End If
End If
' Ab hier ist Versuch zur korrekten Anzeige des Zeilenumbruches gestartet:
ElseIf Not Intersect(Target, Range("J7:J1000")) Is Nothing Then
If Not Target.Count > 1 Then
ElseIf Not Intersect(Target, Range("J7:J1000")) Is Nothing Then
If Not Target.Count > 1 Then
ActiveSheet.Unprotect
If Target = "" Then Target = InputBox("Bitte gib das Datum / " _
& " Uhrzeit des letzten Versuches ein", "Inhalt", "Datum / Uhrzeit")
ActiveSheet.Protect
End If
End If
ActiveSheet.Protect
End If
End Sub

Beiträge von Werner, Luc, robert, J.O.Maximo und folgende lese ich nicht.
Anzeige
AW: VBA SelectionChance
20.04.2018 15:24:05
Patrick
Grandios!
Mit ein wenig Anpassung (unteres Target an oberes von Dir angepasst) funktioniert alles super. Vielen Dank!
Danke für Rückmeldung oT
20.04.2018 16:03:25
Hajo_Zi
AW: VBA SelectionChance
20.04.2018 15:12:07
mmat
Hallo Patrick,
es wird dich freuen zu hören, dass der Zeilenumbruch NICHT die Ursache deines Problems ist.
Das ElseIF in Zeile 12/13 bezieht sich auf das IF in Zeile 4 ("If Not Target.Count > 1 Then").
Stell die Bedingung, dass nur eine Zelle markiert sein darf, ganz an den Anfang und lass es in der Folge weg, dann wird die Verschachtelung deutlich einfacher ...
If Target.Cells.Count > 1 Then Exit sub
Hilft das ?
Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken

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