Anzeige
Archiv - Navigation
1832to1836
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Wenn WAHR dann Text in Zelle schreiben
25.05.2021 13:47:38
Eisi
Hallo zusammen,
soweit ich konnte habe ich den Code zusammengestellt. (Mustermappe im Anhang)
Ich habe 4 Toggle-Button installiert. Wenn aktiviert, also WAHR, dann soll in die Betreffzeile BV + Händler + Verarbeiter + Planer geschrieben werden.
Bei diesem Beispiel sind nur BV und Handel gedrückt, also soll auch nur das in die Betreffzeile geschrieben werden.
Die einzelnen Zellen für Überprüfung von "WAHR" erfolgt wahrscheinlich über eine Schleife?
Aber wie setzte ich wenn WAHR die Inhalte der Zellen zusammen?
Als Ergebnis soll in der Betreffzeile dann so etwas stehen:
Betreff: BV: -------BV----------- "-" -----------Händler---------- "," "VA: " -----------Verarbeiter--------------- oder
Betreff: BV: -------BV----------- "-" -----------Händler---------- oder
Betreff: BV: -------BV----------- "-" -----------Planer----------
Betrifft diesen Code:

Private Sub Worksheet_Change(ByVal Target As Range)
Dim BV     As String
Dim HA     As String
Dim VA     As String
Dim PL     As String
Dim i      As Long
Dim Abfrage As Range
BV = [C2]
HA = [C3]
VA = [C4]
PL = [C5]
Abfrage = Range("J2:J5")
With tbl_Kalkulation
If Abfrage = "WAHR" Then
Range("K9").Value = BV & HA & VA & PL
End If
End With
End Sub
Danke für die Hilfe.
VG Eisi :-)
https://www.herber.de/bbs/user/146353.xlsm

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

Betreff
Datum
Anwender
Anzeige
AW: Wenn WAHR dann Text in Zelle schreiben
25.05.2021 14:22:30
Beverly
Hi,
lösche das Change-Ereignis, denn es wird nicht ausgeführt wenn sich der Zustand eines der ToggleButtons ändert.
Ergänze den Code jedes ToggleButtons nach diesem Prinzip:

Private Sub tgl_BV_Click()
'Sheet: 1_Kalkulation
'Betreffzeile befüllen ja oder nein
If tgl_BV Then
tgl_BV.BackColor = RGB(101, 215, 255)     'Farbe hellblau, Toggle = WAHR = eingeschaltet
Else
tgl_BV.BackColor = RGB(242, 242, 242)     'Farbe grau, Toggle = FALSCH = Ausgeschaltet
End If
Betreff  '
Und füge außerdem noch folgende Prozedur hinzu :

Sub Betreff()
Dim oobT As OLEObject
strBetreff = ""
For Each oobT In ActiveSheet.OLEObjects
If oobT.progID = "Forms.ToggleButton.1" Then
If oobT.Object Then strBetreff = strBetreff & ", " & oobT.Object.Caption
End If
Next oobT
Range("K9") = Mid(strBetreff, 3)
End Sub

GrußformelBeverly's Excel - Inn
Anzeige
AW: Wenn WAHR dann Text in Zelle schreiben
25.05.2021 15:03:26
Eisi
Hallo Karin,
herzlichen Dank für die Hilfe :-)
Es ist noch nicht ganz, dass ich brauche.
Wenn z. B. ToggleButton BV aktiviert, dann soll der Text aus C2 in K9 geschrieben werden. Und je nachdem wie die ToggleButton aktiviert sind ergeben sich verschiedene Möglichkeiten:
Betreff: BV: -------BV----------- "-" -----------Händler---------- "," "VA: " -----------Verarbeiter--------------- oder
Betreff: BV: -------BV----------- "-" -----------Händler---------- oder
Betreff: BV: -------BV----------- "-" -----------Planer----------
Wenn ich das ohne Überprüfung / ToggleButton in eine Formel schreiben würde, sieht es wohl so aus:
="BV: "&C2&" - "&C3&", "&"VA: "&C4&", "&C5
Aber je nach Toggle Aktivierung variiert die Betreffzeile.
Hast Du da noch eine Idee?
Vielen Dank.
VG Eisi :-)
Anzeige
AW: Wenn WAHR dann Text in Zelle schreiben
25.05.2021 15:33:04
Eisi
:-)
AW: Wenn WAHR dann Text in Zelle schreiben
25.05.2021 15:41:40
Beverly
Hi,
sorry, aber ich verstehe dein Prinzip nicht: weshalb soll, wenn nur der ToogleButton "BV" aktiviert ist außer C2 auch noch C3 eignetragen werden und woher kommt in diesem Fall noch "VA:" und C4 & C5? Worin besteht deine Logik?

GrußformelBeverly's Excel - Inn
AW: Wenn WAHR dann Text in Zelle schreiben
25.05.2021 15:49:04
Eisi
Hallo Karin,
Das Programm soll später ein Angebot schreiben.
Der User trägt die Objektdaten und Kontakte unter C2 bis C5 ein.
Der User entscheidet dann, ob das Angebot an den Händler geht und dann würde zum Beispiel die Betreffzeile so aussehen:
BV: (Text aus C2) - (Text aus C3), VA: (Text aus C4)
Der User könnte auch entscheiden das Bauvorhaben und nur den Planer im Betreff zu benennen.
Danke :-)
Anzeige
AW: Wenn WAHR dann Text in Zelle schreiben
25.05.2021 16:00:05
Beverly
Hi,
dass die Daten aus Spalte C übernommen werden sollen ist mir schon klar, aber nicht dein Prinzip, WELCHE Zeilen in Abhängigkeit von der Auswahl der ToggleButton. Wenn NUR "BV" aktiviert ist und die anderen nicht, weshalb soll dann auch noch C3 eingetragen werden? Irgendwie scheint mir, dass du das selbst nicht so richtig weißt, denn im letzten Beitrag hast du geschrieben ="BV: "&C2&" - "&C3&", "&"VA: "&C4&", "&C5 und nun BV: (Text aus C2) - (Text aus C3), VA: (Text aus C4) - wo ist plötzlich C5 abgeblieben?

GrußformelBeverly's Excel - Inn
Anzeige
AW: Wenn WAHR dann Text in Zelle schreiben
25.05.2021 16:17:11
Eisi
Hallo Karin,
das war nur ein Beispiel. Je nachdem welche ToggleButton gedrückt sind, soll sich der Text automatisch in der Betreffzeile neu zusammenstellen.
Das kann ein ToggleButton sein, es können aber auch 2 oder 3 sein, die gedrückt sind.
Aber mir ist schon was dazu eingefallen, ich stricke mir ein paar Formeln zusammen und frage den Status in den Zellen ab.
Trotzdem vielen Dank für die coole Lösung, die ist ein anderes Mal sehr hilfreich.
GLG Eisi :-)
AW: Wenn WAHR dann Text in Zelle schreiben
25.05.2021 16:35:17
Beverly
Hi,
Zitat: "Das kann ein ToggleButton sein, es können aber auch 2 oder 3 sein, die gedrückt sind."
Richtig. Und je nachdem, welche/r ToggleButton gedrückt sind/ist, setzt mein Code den Text, der in K9 eingetragen werden soll, aus der ToggleButton-Aufschrift und der betreffenden Zeile aus Spalte C zusammen - ich sehe also immer noch nicht, wo das Problem ist.
Übrigens: wenn du ein Beispiel nennst, solltest du nicht im Folgebeitrag mehrere Beispiele miteinander vermischen sondern immer bei demselben bleiben...

GrußformelBeverly's Excel - Inn
Anzeige
AW: Wenn WAHR dann Text in Zelle schreiben
25.05.2021 16:45:17
Eisi
Hallo Karin,
Dein Code macht genau das was er machen soll, darum merke ich mir den für später. Der ist super.
Ich wollte mit den 4 ToggleButton nur abfragen ist WAHR oder FALSCH und wenn WAHR, dann nehme den Inhalt aus Zelle C2 und setze den Inhalt neben der Zelle mit "Betreff:". Und so hätte ich die Zellen C3, C4 und C5 abgefragt.
Aber in VBA wäre das vermutlich eh zu umständlich, denn die Formellösung ist schon fertig und läuft perfekt.
Vielen Dank für Deine Hilfe.
GLG Eisi :-)

340 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige