Microsoft Excel

Herbers Excel/VBA-Archiv

Informationen und Beispiele zum Thema MsgBox
BildScreenshot zu MsgBox MsgBox-Seite mit Beispielarbeitsmappe aufrufen
Informationen und Beispiele zum Thema Userform
BildScreenshot zu Userform Userform-Seite mit Beispielarbeitsmappe aufrufen
Informationen und Beispiele zum Thema OptionButton
BildScreenshot zu OptionButton OptionButton-Seite mit Beispielarbeitsmappe aufrufen
Informationen und Beispiele zum Thema TextBox
BildScreenshot zu TextBox TextBox-Seite mit Beispielarbeitsmappe aufrufen

VBA OptionButton Finden und Ergebnis speichern


Betrifft: VBA OptionButton Finden und Ergebnis speichern von: Madi
Geschrieben am: 11.07.2018 23:55:48

Hallo zusammen,

vielen Dank schon einmal vorab für eure große Mühen, welche ihr für uns auf euch nehmt.

Ich bin ein Anfänger in VBA und versuche gerade für meine Kollegen eine kleine Datenbank aufzubauen, welche hoffentlich dazu beitragen kann, dass die Herren etwas strukturierter Arbeiten können. Dazu habe ich bereits 2 Userformen eingerichtet, welche gut laufen.

1. Frage: Eine Userform (SuchenPlan) enthält 2 OptionButton. Vorab wird mit einer Vorgangsnummer Daten abgespeichert. Im zweiten Schritt wird mit der Vorgangsnummer gesucht und die Daten eingelesen. Jetzt kommen die OptionButton ins Spiel. Wenn der erste Button "Vollständig" angeklickt wird, soll dieses Ergebnis in Spalte 19 mit "Ja" gespeichert werden. Was ich leider nicht hinbekomme. Der zweite Button "Unvollständig" macht die nächsten Textboxen sichtbar. Das funktioniert auch gut, jedoch möchte ich auch das Ergebnis des Buttons in Zeile 19 abspeichern.
OptionButton_Vollständig True - "Ja"
OptionButton_Unvollständig True - "Nein"

Hintergrund ist, dass wenn derselbe Auftrag wieder gesucht wird und vorher "Unvollständig" angeklickt worden ist, dass die Daten dahinter momentan nicht sichtbar sind.

Mein Code hierfür sieht wie folgt aus:

Private Sub Button_Eingabe_Click()

'Hier müsste ich das Ereignis der OptionButton abspeichern. OptionButton_Vollständig True Then  _
WkSh.Cells(r.Zelle.Row,19) "Ja"... OptionButton_Unvollständig True Then  "Nein"



'Daten in das Tabellenblatt spielen


Dim WkSh    As Worksheet
Dim rZelle  As Range

   Set WkSh = ThisWorkbook.Worksheets("Planänderungen")

   If TextBox_Auftrag.Value <> "" Then
      With WkSh.Columns(1)
         Set rZelle = .Find(TextBox_Auftrag.Value, LookAt:=xlWhole, LookIn:=xlValues)
         If Not rZelle Is Nothing Then
           
             WkSh.Cells(rZelle.Row, 14).Value = TextBox_Datum.Value
             WkSh.Cells(rZelle.Row, 17).Value = TextBox_Bemerkungen2.Value
            WkSh.Cells(rZelle.Row, 23).Value = TextBox_DatumFrist.Value
            WkSh.Cells(rZelle.Row, 30).Value = TextBox_Enddatum.Value
            WkSh.Cells(rZelle.Row, 21).Value = TextBox_Fehlpläne.Value
            WkSh.Cells(rZelle.Row, 24).Value = TextBox_FristZeitraum.Value
            WkSh.Cells(rZelle.Row, 31).Value = TextBox_Fristtext.Value
            WkSh.Cells(rZelle.Row, 32).Value = TextBox_AnzahlFehlpläne.Value
           
          Else
            MsgBox "Der gesuchte Begriff  """ & TextBox_Auftrag.Value & _
               """  wurde nicht gefunden.", _
               48, "   Hinweis für " & Application.UserName
            TextBox_Auftrag.SetFocus
         End If
      End With
   End If

Unload Me
'Zum Tabellenblatt Formular Dateneingabe wechseln
Sheets("Dateneingabe").Activate
End Sub
Für die Suche habe ich folgenden Code verwendet:
Private Sub Button_Suchen_Click()

Dim WkSh    As Worksheet
Dim rZelle  As Range

'Soll die Daten mit der Vorgangsnummer suchen und dann in die entsprechenden Textboxen eingeben

'Hier müsste ich das "Ereignis" der OptionButton suchen. Ich wollte in die Tabelle Planänderung  _
Spalte 19 ein JA, wenn das Ergebnis des OptionButton_Vollständig True ist _
Wenn der OptionButton_Unvollständig angeklickt wird, soll ein Nein als Ergebnis gespeichert  _
werden. Bei einer neuen Suche mit derselben Vorgangsnummer soll für JA der OptionButton_Vollständig angeklickt sein. _
Sollte das Ergbnis Nein sein, dann soll der OptionButton_Unvollständig angeklickt sein.


   Set WkSh = ThisWorkbook.Worksheets("Planänderungen")

   If TextBox_Auftrag.Value <> "" Then
      With WkSh.Columns(1)
         Set rZelle = .Find(TextBox_Auftrag.Value, LookAt:=xlWhole, LookIn:=xlValues)
         If Not rZelle Is Nothing Then
            TextBox_Firma.Value = WkSh.Cells(rZelle.Row, 4).Value  'Gibt den Wert aus der  _
Tabelle Spalte 4 Firma zurück
            TextBox_Leitung.Value = WkSh.Cells(rZelle.Row, 5).Value
            TextBox_Plannummern.Value = WkSh.Cells(rZelle.Row, 10).Value
            TextBox_Status.Value = WkSh.Cells(rZelle.Row, 13).Value
            TextBox_Bearbeiter.Value = WkSh.Cells(rZelle.Row, 18).Value
            TextBox_Bemerkungen.Value = WkSh.Cells(rZelle.Row, 16).Value
            TextBox_Extern.Value = WkSh.Cells(rZelle.Row, 9).Value
            TextBox_Kategorie1.Value = WkSh.Cells(rZelle.Row, 6).Value
            TextBox_Kategorie2.Value = WkSh.Cells(rZelle.Row, 7).Value
            TextBox_Kategorie3.Value = WkSh.Cells(rZelle.Row, 8).Value
            TextBox_Gesamt.Value = WkSh.Cells(rZelle.Row, 20).Value
            TextBox_StatusFrist.Value = WkSh.Cells(rZelle.Row, 27).Value
            TextBox_AnzahlFehlpläne.Value = WkSh.Cells(rZelle.Row, 32).Value
            TextBox_Fehlpläne.Value = WkSh.Cells(rZelle.Row, 21).Value
            TextBox_Fristtext.Value = WkSh.Cells(rZelle.Row, 31).Value
            TextBox_FristZeitraum.Value = WkSh.Cells(rZelle.Row, 24).Value
            TextBox_Enddatum.Value = WkSh.Cells(rZelle.Row, 30).Value
            
          Else
            MsgBox "Der gesuchte Begriff  """ & TextBox_Auftrag.Value & _
               """  wurde nicht gefunden.", _
               48, "   Hinweis für " & Application.UserName
            TextBox_Auftrag.SetFocus
         End If
      End With
    Else
      MsgBox "Sie müssen einen Suchbegriff eingeben - danke." & _
         48, "   Hinweis für " & Application.UserName
         TextBox_Auftrag.SetFocus
   End If
End Sub
2. Problem
Es soll die Möglichkeit geben, über Datenschnitte die Daten zu filtern (Tabellenblatt "Status Abfrage") und diese durch Drill Down entweder in ein vorhandenes Tabellenblatt "Status" oder wenn möglich in eine neue Datei zu kopieren. Hintergrund ist, dass diese an andere Firmen verschickt werden und diese die Möglichkeit haben sollen, sich über die verschiedenen Status einen Überblick zu verschaffen.
Zuvor hatte ich das über ein Makro mit Finden und ganze Zelle kopieren getestet, jedoch sind die Ladezeiten einfach viel zu lang. Ich habe schon einiges ausprobiert, jedoch ist mir bisher nicht einmal der Ansatz einer Lösung gelungen.

Ich freue mich auf eure Lösungen und wünsche euch einen schönen Abend.
Viele Grüße Madi

  

Betrifft: AW: VBA OptionButton Finden und Ergebnis speichern von: Hajo_Zi
Geschrieben am: 12.07.2018 08:17:00

wie kann man einen OptionsButton nur teilweise anklicken.
Nur wenige sehe Deine Datei und können das sehen.
Weiter habe ich nicht gelesen.

GrußformelHomepage

Beiträge von Werner, Luc, robert, J.O.Maximo und folgende lese ich nicht.


  

Betrifft: AW: VBA OptionButton Finden und Ergebnis speichern von: Madi
Geschrieben am: 12.07.2018 08:43:30

Guten Morgen,

deine nicht vorhandene Freundlichkeit kenne ich ja mittlerweile. Aber die Button heißen so, weil es um die Vollständigkeit bzw. Unvollständigkeit von Unterlagen geht.

Wenn du keine konstruktive Lösung hast, dann lass es doch bitte einfach bleiben zu antworten.

Vielen Dank.

Gruß, Madlen


  

Betrifft: AW: VBA OptionButton Finden und Ergebnis speichern von: Madi
Geschrieben am: 12.07.2018 11:09:29

Das erste Problem konnte ich selbst lösen. Ich habe die OptionButton mit einer unsichtbaren TextBox verbunden.



Beiträge aus dem Excel-Forum zum Thema "VBA OptionButton Finden und Ergebnis speichern"