Excel VBA zellenbedingung

Dieses Thema Excel VBA zellenbedingung im Forum "Microsoft Office Suite" wurde erstellt von schlemmer_horst, 20. Aug. 2007.

Thema: Excel VBA zellenbedingung hallo zusammen. muss in einem excel sheet gewissen felder ausfüllen. habe ein dropdown feld welches mir 10...

  1. hallo zusammen.

    muss in einem excel sheet gewissen felder ausfüllen.

    habe ein dropdown feld welches mir 10 verschiedene dinge zur auswahl gibt

    beispiel
    a
    b
    c
    d
    usw.

    habe kein problem das später das ausgefüllt wird, was ich will
    jedoch weiss ich nicht wie es funktioniert wenn ich gewisse dinge nur in a haben will, gewisse in b usw.

    sprich wenn ich a auswähle soll kommen maier, chef, 0190, email@email.de
    wenn ich b auswähle soll kommen müller, dvd, 0191, email2@email.de

    usw

    jmd n tip?
     
  2. Hallo schlemmer_horst,

    kannst du das nochmal etwas genauer erklären.
    Soll das ein Dropdown von Dropdownfeld werden ?

    Gruß Matjes :)
     
  3. moin matjes

    im prinzip ist es so

    das ich in zelle A31 ein dropdownfeld habe

    in diesem steht dann

    Team1
    Team2
    Team3
    .
    .
    .
    .
    .
    .
    .
    usw.


    ich habe dann ein makro geschrieben das wie folgt aussieht

    Sub Makro1()
    Dim ingezeile As Long

    Range(C33:H33).Select
    ActiveCell.FormulaR1C1 = Name
    Range(C34:H34).Select
    ActiveCell.FormulaR1C1 = Position
    Range(C35:H35).Select
    ActiveCell.FormulaR1C1 = Telefonnummer
    Range(C35:H35).Select
    ActiveCell.FormulaR1C1 =->Handynr
    Range(C36:H36).Select
    Range(C37:H37).Select
    ActiveCell.FormulaR1C1 = Emailaddi
    Range(C38).Select

    End Sub



    wenn ich dann F5 drücke, füllt er mir auch anstandslos die felder aus
    jetzt ist es so das die jeweiligen teams immer verschiedene Ansprechpartner haben.
    so wie es oben steht, füllt er mir es aus, EGAL was in dem dropdownfeld angegeben ist...er soll es jedoch nur dann ausfüllen wenn z.b. Team1 ausgewählt wurde.


    hintergrund ist der
    das ich für jedes team die daten in dem makro hinterlegen will

    das eben wenn ich TEAM1 wähle - das teil mir direkt alle ansprechpartner in bestimmte zellen einsetzt

    genauso dann mit TEAM2
    usw.

    hoffe es ist jetzt genauer ;D mml
     
  4. Hallo schlemmer_horst,

    mit einem Makro folgender Bauart könntest du das erstellen.

    Gruß Matjes :)
    Code:
    Sub ZustaendigenEintragen()
    
     Dim s As String
    
    ->Wert aus Zelle A31 (Dropdownliste)
     s = Range(A31).Value
    
    ->entsprechend verzweigen
     Select Case s
      Case TEAM1
       Range(C33).Value = TEAM1-Name
       Range(C34).Value = TEAM1-Position
       Range(C35).Value = TEAM1-Telefonnummer
       Range(C36).Value = TEAM1-Handynr
       Range(C37).Value = TEAM1-Emailaddi
      Case TEAM2
       Range(C33).Value = TEAM2-Name
       Range(C34).Value = TEAM2-Position
       Range(C35).Value = TEAM2-Telefonnummer
       Range(C36).Value = TEAM2-Handynr
       Range(C37).Value = TEAM2-Emailaddi
      Case TEAM3, TEAM4
       Range(C33).Value = TEAM3und4-Name
       Range(C34).Value = TEAM3und4-Position
       Range(C35).Value = TEAM3und4-Telefonnummer
       Range(C36).Value = TEAM3und4-Handynr
       Range(C37).Value = TEAM3und4-Emailaddi
      Case TEAM5
       Range(C33).Value = TEAM5-Name
       Range(C34).Value = TEAM5-Position
       Range(C35).Value = TEAM5-Telefonnummer
       Range(C36).Value = TEAM5-Handynr
       Range(C37).Value = TEAM5-Emailaddi
      Case Else
       Range(C33).Value = nichts ausgewählt
       Range(C34).Value = 
       Range(C35).Value = 
       Range(C36).Value = 
       Range(C37).Value = 
     End Select
    End Sub
     
  5. moin matjes

    wenn ich dein code so benutze dann kommt bei mir immer nur nichts ausgewählt

    was meinst du btw noch mit diesen 2 punkten?

    'Wert aus Zelle A31 (Dropdownliste)

    ->entsprechend verzweigen



    sry wenn ich dich schon nerv - aber ich befinde mich immernoch im vba grundaufbau

    :)
     
  6. Hallo schlemmer_horst,

    mittels der Dropdown-Liste wählst du einen Wert aus, z.B. TEAM1.

    Das Makro liest den ausgewählten wert in A31 aus und speichert ihn in der Variablen s.
    ( s = Range(A31).Value )

    Entsprechend dieser Variablen s wird dann verzweigt
    ( Select Case s )

    Es wird dann der Zweig ausgeführt, bei dem die Variable eingetragen ist.
    In diesem Fall (TEAM1)
    Case TEAM1
    Range(C33).Value = TEAM1-Name
    Range(C34).Value = TEAM1-Position
    Range(C35).Value = TEAM1-Telefonnummer
    Range(C36).Value = TEAM1-Handynr
    Range(C37).Value = TEAM1-Emailaddi

    Wenn der Variable in keinem Zweig eingetragen ist, wird der sonst-Zweig ausgeführt:
    Case Else
    Range(C33).Value = nichts ausgewählt
    Range(C34).Value =
    Range(C35).Value =
    Range(C36).Value =
    Range(C37).Value =


    Da das letztere der Fall ist, müßtest du z.B. den ersten Zweig umeditieren. Groß- und Kleinschreibung sind dabei zu beachten.
    Nehmen wir an dein TeAm1 wird so geschrieben: TEam 1, dann müßtest du die Zeile
    Code:
    Case TEAM1
    in
    Code:
    Case TEam 1
    ändern, sonst wird die Bezeichnung nicht erkannt.

    Ich hab den Case Else - Zweig noch ein wenig geändert, damit du eine Meldung erhälst.
    Code:
    Sub ZustaendigenEintragen()
    
     Dim s As String
    
    ->Wert aus Zelle A31 (Dropdownliste)
     s = Range(A31).Value
    
    ->entsprechend verzweigen
     Select Case s
      Case TEAM1
       Range(C33).Value = TEAM1-Name
       Range(C34).Value = TEAM1-Position
       Range(C35).Value = TEAM1-Telefonnummer
       Range(C36).Value = TEAM1-Handynr
       Range(C37).Value = TEAM1-Emailaddi
      Case TEAM2
       Range(C33).Value = TEAM2-Name
       Range(C34).Value = TEAM2-Position
       Range(C35).Value = TEAM2-Telefonnummer
       Range(C36).Value = TEAM2-Handynr
       Range(C37).Value = TEAM2-Emailaddi
      Case TEAM3, TEAM4
       Range(C33).Value = TEAM3und4-Name
       Range(C34).Value = TEAM3und4-Position
       Range(C35).Value = TEAM3und4-Telefonnummer
       Range(C36).Value = TEAM3und4-Handynr
       Range(C37).Value = TEAM3und4-Emailaddi
      Case TEAM5
       Range(C33).Value = TEAM5-Name
       Range(C34).Value = TEAM5-Position
       Range(C35).Value = TEAM5-Telefonnummer
       Range(C36).Value = TEAM5-Handynr
       Range(C37).Value = TEAM5-Emailaddi
      Case Else
       If s =  Then
        MsgBox Nichts ausgewählt.
       Else
        MsgBox _
         Ausgewählten Begriff nicht erkannt. & vbLf & _
         Begriff:-> & s &->
       End If
     End Select
    End Sub

    Gruß Matjes :)
     
  7. ok perfect
    das hab ich jetzt verstanden.

    und das makro so funktioniert auch.

    danke erstmal hierfür =)

    das makro selber muss ich jetzt ja noch instinktiv ansteuern.
    gibts da eine möglichkeit das makro so zu schreiben das wenn ich aus dem dropdown feld etwas wähle mir es das makro direkt anstösst?

    bislang ist das dropdown feld ja nur - ich sag mal lose dahängend.

    verstehst du?

    aber so bislang
    vielen vielen dank matjes

    du bist wirklich ein vba gott :1
     
  8. Hallo schlemmer_horst,

    wenn du folgendes Makro in die Code-Seite des Blattes packst, sollte der Aufruf automatisch erfolgen.

    Code:
    Private Sub Worksheet_Change(ByVal Target As Range)
     
     Const cDropDownZelle = A31
     
    ->eine Zelle geändert ?
     If Target.Count = 1 Then
     ->Adresse der DropDown-Zelle ?
      If Target.Address(False, False) = cDropDownZelle Then
      ->Inhalt nicht leer ?
       If Target.Value <>  Then
       ->entsprechend ausfüllen
        Call ZustaendigenEintragen
       End If
      End If
     End If
    End Sub
    Die Code-Seite des Blattes erreichst Du am einfachsten, wenn du die Blattlasche selektierst -> rechte Maustaste-> Code anzeigen wählst.

    Gruß Matjes :)
     
  9. hahaahahahahah
    ich liebe dich

    schick mir deine kontodaten ich überweis dir geld :D

    du bist perfect

    matjes you are my hero

    (wo ist der gott smilie, oder der kuss smilie ;D )

    vielen vielen dank
     
Die Seite wird geladen...

Excel VBA zellenbedingung - Ähnliche Themen

Forum Datum
Excel-Feature gesucht Microsoft Office Suite 11. Okt. 2016
Excel Tabelle Werte zu ordnen Microsoft Office Suite 23. Sep. 2016
Excel: Bereiche auf 'leer' Überprüfen Microsoft Office Suite 15. Sep. 2016
Import Datensatz inkl = und - Zeichen in Excel/Libre CALC Software: Empfehlungen, Gesuche & Problemlösungen 20. Mai 2016
Bestimmter User kann seine Excel Dateien nicht mehr direkt öffnen Software: Empfehlungen, Gesuche & Problemlösungen 16. Apr. 2016