Office: (Office 2003) VBA Code Verdoppeln klappt nicht

Helfe beim Thema VBA Code Verdoppeln klappt nicht in Microsoft Excel Hilfe um das Problem gemeinsam zu lösen; Hallo liebe Community, wiedermal brauche ich eure Hilfe. Bisher wurde ich hier sehr gut beraten und hoffe auch diesmal auf Hilfe ;) Also ich habe 2... Dieses Thema im Forum "Microsoft Excel Hilfe" wurde erstellt von MHFLURO, 24. Januar 2018.

  1. MHFLURO hat Ahnung

    VBA Code Verdoppeln klappt nicht


    Hallo liebe Community,
    wiedermal brauche ich eure Hilfe. Bisher wurde ich hier sehr gut beraten und hoffe auch diesmal auf Hilfe ;)

    Also ich habe 2 Codes in meiner Tabelle:

    1.

    Private Sub ComboBox1_Change()
    ComboBox1.ListFillRange = "DropDownList"
    Me.ComboBox1.DropDown
    End Sub


    Dient dazu, dass ich bei Eingabe eines Buchstaben in einer Combobox nur das angezeigt bekomme das auch diesen Buchstaben beinhaltet.


    2.

    Option Explicit
    Dim blnNein As Boolean

    Private Sub ComboBox2_Change()
    blnNein = True
    End Sub

    Private Sub ComboBox1_DropButtonClick()
    If blnNein = False Then
    ComboBox1.ListIndex = -1
    End If
    blnNein = False
    End Sub


    Dient dazu, dass wenn ich auf den Pfeil der Combobox klicke, der Inhalt gleich wieder gelöscht wird.

    Nun habe ich versucht diese beiden zu kombinieren( einfach untereinander schreiben geht nicht). Es hat aber so funktioniert:

    Option Explicit
    Dim blnNein As Boolean

    Private Sub ComboBox1_Change()
    blnNein = True
    ComboBox1.ListFillRange = "DropDownList"
    Me.ComboBox1.DropDown
    End Sub

    Private Sub ComboBox1_DropButtonClick()
    If blnNein = False Then
    ComboBox1.ListIndex = -1
    End If
    blnNein = False
    End Sub



    Nun mein Problem: Möchte ich genau das gleiche auf die zweite combobox anwenden klappt es nicht mehr. (sieht so aus):

    Option Explicit
    Dim blnNein As Boolean

    Private Sub ComboBox1_Change()
    blnNein = True
    ComboBox1.ListFillRange = "DropDownList"
    Me.ComboBox1.DropDown
    End Sub

    Private Sub ComboBox1_DropButtonClick()
    If blnNein = False Then
    ComboBox1.ListIndex = -1
    End If
    blnNein = False
    End Sub

    Private Sub ComboBox2_Change()
    blnNein = True
    ComboBox2.ListFillRange = "DropDownList"
    Me.ComboBox2.DropDown
    End Sub

    Private Sub ComboBox2_DropButtonClick()
    If blnNein = False Then
    ComboBox2.ListIndex = -1
    End If
    blnNein = False
    End Sub


    Ich weiss einfach nicht was ich falsch mache. Vielen dank schonmal im Voraus.
     
    MHFLURO, 24. Januar 2018
    #1
  2. MHFLURO hat Ahnung
    Hat denn keiner ne Anhnung?
     
    MHFLURO, 30. Januar 2018
    #2
  3. Beverly
    Beverly Erfahrener User
    Hi,

    mit der Aussage "klappt so nicht" kann niemand etwas anfangen, du musst schon GENAU angeben, WAS nicht klappt - ich kann also nur raten: wenn die zweite CombobBox unabhängig von der ersten sein soll, dann musst du dafür eine andere Variable als blnNein verwenden und nicht dieselbe.

    Bis später,
    Karin
     
    Beverly, 30. Januar 2018
    #3
  4. MHFLURO hat Ahnung

    VBA Code Verdoppeln klappt nicht

    Also machen wirs anders. Bevor ich viel erkläre was klappt und was nicht stelle ich die Frage anders:

    Ich hätte gerne das (Dropdownpfeil löscht bei Klick den Eintrag in der Combobox):

    Option Explicit
    Dim blnNein As Boolean

    Private Sub ComboBox1_Change()
    blnNein = True
    End Sub

    Private Sub ComboBox1_DropButtonClick()
    If blnNein = False Then
    ComboBox1.ListIndex = -1
    End If
    blnNein = False
    End Sub


    In kombination mit dem (Suchfunktion nach Buchstaben in der Dropdownliste)

    Private Sub ComboBox1_Change()
    ComboBox1.ListFillRange = "DropDownList"
    Me.ComboBox1.DropDown
    End Sub


    ZUSÄTZLICH das ganze für Combobox 2 und genau das schaffe ich nicht
     
    MHFLURO, 30. Januar 2018
    #4
  5. Beverly
    Beverly Erfahrener User
    Was meinst du mit ZUSÄTZLICH? Soll die ComboBox2 ABHÄNGIG von ComboBox1 sein (also wenn in ComboBox1 etwas ausgeführt wird dies gleichzeitig auch in ComboBox2 ausgeführt werden) oder sind die beiden UNABHÄNGIG voneinander? Wenn sie unabhängig voneinander sind - da hatte ich die Lösung bereits gepostet.

    Bis später,
    Karin
     
    Beverly, 30. Januar 2018
    #5
  6. MHFLURO hat Ahnung
    Ja sie sollen unabhängig voneinander sein.

    Was soll ich dann eintragen anstatt blnNein?

    einfach "blnJa" oder "bln1"?

    Ich bin übrigens nur ein Konstrukteur und habe generell null Ahnung von den VBA Codes. Ich wurde leider von meinem Chef angehalten diese Suchmaschine zu "bauen" obwohl ich kein blassen habe.
    Alles "wissen" (besser gesagt abgucken) habe ich von Office-hilfe und wenn mans genau nimmt von dir :P Karin
    Ich habe eigentlich immer nur das kopiert was du mir vorgeschlagen hast und habe versucht es irgendwie (ohne hintergrundwissen) so zu ändern bzw. zu kombinieren, dass es klappt. Aber ich kriegs halt nicht hin VBA Code Verdoppeln klappt nicht :(
     
    Zuletzt bearbeitet: 30. Januar 2018
    MHFLURO, 30. Januar 2018
    #6
  7. Beverly
    Beverly Erfahrener User
    Wie du die zweite Variable nennst spielt keine Rolle (Excel erkennt als Variablenname alles an, solange es nicht mit einem Excel-Befehl übereinstimmt und es sich nicht um alleinige Ziffern handelt), nur musst du sie so wie die Variable blnNein außerhalb der Prozeduren deklarieren und genau so verwenden wie sie.

    Bis später,
    Karin

    PS: ich bin übrigens auch nur Diplom-Geologe (im Ruhestand) und habe das Programmieren nicht gelernt sondern mir selbst angeeignet :)
     
    Beverly, 30. Januar 2018
    #7
  8. MHFLURO hat Ahnung

    VBA Code Verdoppeln klappt nicht

    Wow Chapeau, dass du dir das selbst angeeignet hast.
    Darf ich fragen was dich (vor allem im Ruhestand) dazu bewogen hat das noch zu lernen?
    Oder hast du das in der Zeit als Geologin schon gelernt/gebraucht?

    Habe es übrigens irgendwie hinbekommen. Es klappt so wie ichs will getrennt. Aber gibt es eine kleinigkeit die jetzt nicht ganz so ist wie ich es wünschte.

    Es funktioniert zwar das mit dem Klick auf den Dropdownpfeil, dass das ergebnis gelöscht wird. Allerdings, wenn ich irgendwoanders hinklicke als auf den Pfeil zeigt es mir in der Dropdwonliste nur noch ein Ergebnis an und ich muss das ergebnis erst selbst wieder löschen damit die komplette Liste wieder anzeigt.
    Habe die Datei mal hochgeladen.
    Wäre lieb wenn du mal schauen könntest ob das irgendwie behoben werden kann.
     
    Zuletzt bearbeitet: 31. Januar 2018
    MHFLURO, 31. Januar 2018
    #8
  9. Beverly
    Beverly Erfahrener User
    Angefangen zu Programmieren (als Hobby, gelernt oder studiert habe ich dies nicht) habe ich bereits Anfang der 1980er mit BASIC und dBASE und habe dann Mitte der 1990er für unser Labor ein umfangreiches dBASE-Datenbank- und grafisches Auswertesystem (Diagrammemit LOTUS 1-2-3) programmiert, vor allem natürlich um mir und meinen Kollegen die Arbeit zu erleichtern - alles noch auf DOS-Basis. Als dann zu Beginn der 2000er immer mehr Kunden ihre Daten auch in digitaler Form anforderten, bin ich für die grafische Auswertung dann auf Excel aufmerksam geworden und umgestiegen - und seit dem hat mich Excel nicht mehr losgelassen. ;)

    Das Problem in deiner Mappe sind die Formeln in Spalte C und I (bzw. davon abhängig in D ung J) - anstelle 1 steht dann an mehreren Positionen 0 und die Spalten F und K sind somit in diesen Zeilen leer.
    In C3 z.B. steht diese Formel: =--ISTZAHL(WENNFEHLER(SUCHEN(Tabelle1!$A$9;B3;1);"")) - weshalb 9 und nicht 3? Was bezweckst du eigentlich mit den Spalten C/D und I/J? Willst du damit die Länge des Bereichs für die dynamisch definierten Namen DropDownList und DropDownList2 festlegen? Dazu würde doch in D3 die Formel =WENN(B3<>"";ZEILE(A1);"") und nach unten gezogen reichen und Spalte C könnte wegfallen (für die Spalten I/J gilt dasselbe entsprechend).


    Mein Code wäre übrigens der folgende:

    Code:
    Option Explicit
    Dim blnNein As Boolean
    Dim blnNein2 As Boolean
    
    Private Sub ComboBox1_Change()
        blnNein = True
        Me.ComboBox1.DropDown
    End Sub
    
    Private Sub ComboBox1_DropButtonClick()
        If blnNein = False Then
            ComboBox1.ListIndex = -1
        End If
        blnNein = False
    End Sub
    
    Private Sub ComboBox2_Change()
        blnNein2 = True
        Me.ComboBox2.DropDown
    End Sub
    
    Private Sub ComboBox2_DropButtonClick()
        If blnNein2 = False Then
            ComboBox2.ListIndex = -1
        End If
        blnNein = False
    End Sub
    
    

    Bei dir ist die zweite ComboBox anhängig davon, was gerade in der ersten ComboBox gemacht wurde - das ist m.E. falsch, da sie unabhängig voneinander sein sollen.

    Frage: was soll der Code im Codemodul DieseArbeitsmappe? Der ist dort doch völlig sinnfrei.

    Bis später,
    Karin
     
    Zuletzt bearbeitet: 31. Januar 2018
    Beverly, 31. Januar 2018
    #9
  10. MHFLURO hat Ahnung
    Hallo Karin :)
    Interessante Geschichte... dann hast du ja sicher viel erlebt und gesehen im Bezug auf Datenwirrwarr und Excel (und sicher auch viel korrigiert ;P)

    Also zu deiner Antwort:
    die Zeilen C/D sollten einfach nur eine auflistung bezwecken von Zeile F um einen Bezug zu Zeile B zu haben. Da habe ich mir aber auch irgendwo abgeguckt also auch hier wiedermal einfach nur probiert ohne Hintergrundwissen. Dass es natürlich so einfach geht wie du beschrieben hast wusste ich nicht xD

    die 9 Bezog sich ja auf Tabelle1! da habe ich (unsichtbar) das ergebnis von Combobox1 drin stehen gehabt. In Tabelle2! und mit deiner Formel ist es natürlich die 3.. aber auch hier kein plan ob das nicht auch anders gegangen wäre.

    Als letztes die Frage mit Modull Arbeitsmappe.. ich dachte da gehörts rein (wo denn dann?)... auch hier wieder sei mir meine unwissenheit verziehen :P

    So ich habe jetzt mal alles so geändert wie du es beschrieben hast und Voila es klappt... fast.. nämlich funktioniert diese listensuche nicht mehr .. und in Combobox 2 funktioniert mit der Formel das Löschen nicht mehr durch druck auf den Pfeil.
    also vorher habe ich "M" eingegeben und dann kam jedes Ergebnis aus der Liste das ein "M" beinhaltet hat. Das ist jetzt weg.
    Dann dachte ich vielleicht hast du vergessen die Listfillrange (habs fett im Code markiert) einzufügen und habe das dann eingefügt.. hat aber irgendwie nichts verändert.


    Code:
    Option Explicit
    Dim blnNein As Boolean
    Dim blnNein2 As Boolean
    
    Private Sub ComboBox1_Change()
        blnNein = True
        [B]ComboBox1.ListFillRange = "DropDownList"[/B]
        Me.ComboBox1.DropDown
    End Sub
    
    Private Sub ComboBox1_DropButtonClick()
        If blnNein = False Then
            ComboBox1.ListIndex = -1
        End If
        blnNein = False
    End Sub
    
    Private Sub ComboBox2_Change()
        blnNein2 = True
        [B]ComboBox2.ListFillRange = "DropDownList2"[/B]
        Me.ComboBox2.DropDown
    End Sub
    
    Private Sub ComboBox2_DropButtonClick()
        If blnNein2 = False Then
            ComboBox2.ListIndex = -1
        End If
        blnNein = False
    End Sub
     
    Zuletzt bearbeitet: 1. Februar 2018
    MHFLURO, 1. Februar 2018
    #10
  11. Beverly
    Beverly Erfahrener User
    Hi,

    ich würde das ganze ein wenig anders lösen.
    Für die ComboBoxen habe ich die Eigenschaft "MatchEntry" auf 1-fmMatchEntryComplete gesetzt. Voraussetzung dafür ist aber, dass die Liste alphabetisch sortiert ist - deshalb habe ich die Formeln in C/D und H/I nochmal etwas geändert, sodass Spalte D die Spalte B alphabetisch sortiert ausgibt. Für den rechten Teil der Liste (Spalten H/I) wäre das eigentlich nicht erforderlich, da die Daten in G sortiert sind, aber falls sie unsortiert vorliegen sollten würden die Formeln dann die Sortierung realisieren.

    Bis später,
    Karin
     
    Beverly, 1. Februar 2018
    #11
  12. MHFLURO hat Ahnung
    Das Problem ist, dass es so nicht machbar ist. Die letzte spalte gehört nämlich zur ersten (die beschreibung) und wenn ich an der ersten spalte etwas ändere (verschiebe) dann finde ich niemals mehr das wo es dazu gehört.

    Naja ist auch nicht so schlimm. Dann bleibe ich jetzt halt bei der nicht ganz so ausgefeilten ersten Version und muss halt löschen wenn ich was angeklickt habe :P bis auf das funktioniert ja alles. Trotzdem Danke dir vielmals für die Mühe :)
     
    MHFLURO, 1. Februar 2018
    #12
  13. Beverly
    Beverly Erfahrener User

    VBA Code Verdoppeln klappt nicht

    Die erste Spalte (B) wird doch nicht verändert, es wird nur eine alphabetische Sortierung der Spalte B in der Spalte D ausgeführt - die Spalten C und D hattest du doch sowieso ausgeblendet.

    Bis später,
    Karin
     
    Beverly, 1. Februar 2018
    #13
  14. MHFLURO hat Ahnung
    Gott bin ich blöd VBA Code Verdoppeln klappt nicht :confused: klar du hast recht.
    Ich habe mich glaub verlesen und dachte du hast spalte B direkt sortiert.
    Ja so is gut xD und jetzt klappts auch mit dem Klicken ... oh mann Karin weiss nicht wie ich dir danken soll.

    Vielen Dank für deine Mühen, wünsche dir was!

    Bis bald
     
    MHFLURO, 1. Februar 2018
    #14
Thema:

VBA Code Verdoppeln klappt nicht

Die Seite wird geladen...
  1. VBA Code Verdoppeln klappt nicht - Similar Threads - VBA Code Verdoppeln

  2. Per Hyperlink ausgeblendetes Blatt einblenden

    in Microsoft Excel Hilfe
    Per Hyperlink ausgeblendetes Blatt einblenden: Hola ins Forum, ich bräuchte mal wieder eure Hilfe. Ich habe ein Tabellenblatt das mir als Register dient und wo Hyperlinks eingefügt sind um auf das dazugehörige Blatt zu springen. Diese Blätter...
  3. VBA Code für Zeilen ausblenden einblenden mit JA/Nein

    in Microsoft Excel Hilfe
    VBA Code für Zeilen ausblenden einblenden mit JA/Nein: Hallo, habe eine Exceltabelle, bei der ich bei einer Zelle eine Ja/Nein abfrage mache, wenn in der Zelle Nein steht, dann soll ein bestimmter Zeilenbereich, den ich definieren möchte, ausgeblendet...
  4. VBA Code ohne ergebnis

    in Microsoft Excel Hilfe
    VBA Code ohne ergebnis: Hallo, ich habe einen VBA Code der in meiner Tabelle nicht funktioniert. Kann mir vielleicht jemand bei der Korrektur ggf. weiter helfen? Danke und Gruß Private Sub Worksheet_Change(ByVal Target...
  5. VBA Code Anpassen "Wert Einfügen statt Formel"

    in Microsoft Excel Hilfe
    VBA Code Anpassen "Wert Einfügen statt Formel": Hallo alle zusammen. Ich benötige bitte Hilfe von einem Experten, da ich mit meinem Code unzufrieden bin und dieser bei größeren Datenmengen respektive Zeilen ziemlich langsam wird. Wie müsste man...
  6. Excel VBA - Code Hilfe (Spalten, Werte kopieren etc.)

    in Microsoft Excel Hilfe
    Excel VBA - Code Hilfe (Spalten, Werte kopieren etc.): Hallo, ich benötige Hilfe für ein Problem, welches ich leider selbst schwerlich als Anfänger nicht lösen kann: Ich möchte von dem Tabellenblatt "Tabelle1" aus den Zellen B8:B14, K8:K14, B18:B25,...
  7. VBA Code " Zeilenhöhe bei Verb. Zellen Funktioniert fasst"

    in Microsoft Excel Hilfe
    VBA Code " Zeilenhöhe bei Verb. Zellen Funktioniert fasst": Hallo Leute dieser Code für Zellenhöhe bei Verbundenen Zellen Funktioniert fast. Ich habe ein Code von jemand anderem bekommen der nicht in einem Forum ist. Ich kann gerade diese Person nicht...
  8. PDF mit Namen,Datum speichern im Zielordner

    in Microsoft Excel Hilfe
    PDF mit Namen,Datum speichern im Zielordner: Hallo, habe das Problem den Namen in Zelle D2, Vorname in Zelle D5 , das Datum steht in der Zelle B 10 und soll beim speichern so angezeigt werden (Max Mustermann 2023 Oktober) wie und wo muß ich...
  1. Diese Seite verwendet Cookies, um Inhalte zu personalisieren, diese deiner Erfahrung anzupassen und dich nach der Registrierung angemeldet zu halten.
    Auf dieser Website werden Cookies für die Zugriffsanalyse und Anzeigenmessung verwendet.
    Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies.
    Information ausblenden