Microsoft Excel

Herbers Excel/VBA-Archiv

gruppieren von daten

    Betrifft: gruppieren von daten von: marcus
    Geschrieben am: 03.09.2003 09:03:24

    guten morgen!!

    ganz vereinfacht möchte ich folgendes machen:
    in b1 steht diese formel:
    =WENN(A1="ASIEN";1;0)

    jetzt soll in a1 allerdings nicht ASIEN eingegeben werden, sondern z.b. japan, china, taiwan etc.
    wie kann ich japan, china etc. zu ASIEN gruppieren, so dass in b1 nur die abfrage sein soll, ob es asien ist?
    ich will damit verhindern, dass in b1 eine riesenformel stehen muss: =WENN(ODER(A1="japan";A1="china";.....;1;0)

    ich hoffe, ich konnte das problem verdeutlichen.
    ich möchte also mehrere länder unter der gruppe asien definieren, so dass ich jederzeit mit einer WENN-abfrage nach ASIEN prüfen kann und excel weiss, dass japan, china, korea etc. damit gemeint sind.

    vielen dank für tipps !

      


    Betrifft: AW: gruppieren von daten von: OttoH
    Geschrieben am: 03.09.2003 09:54:04

    Hallo MArcus,

    das Problem lässt sich recht einfach mit SVerweis regeln.
    Lege irgendwo einen 2spaltigen bereich nach folgendem Muster an:
    I--------------I----------I
    Japan China
    Taiwan China
    China China
    Deutschland Europa
    Belgien Europa
    Österreich Europa

    Dieser Bereich sei z.B. F6:G11.

    Wenn dann in A1 das LAnd steht, kannst Du mit der Formel =SVERWEIS(A1;F6:G11;2;FALSCH) in B1 den Kontinent zuordnen.

    Gruß OttoH


      


    Betrifft: AW: gruppieren von daten von: marcus
    Geschrieben am: 03.09.2003 10:35:52

    hallo otto,

    vielen dank!
    allerdings habe ich sehr viele bezüge und abfragen dieser art, so dass ich mit sverweis nicht arbeiten kann. sonst werden meine formeln endlos lang...

    ich dachte eher, dass man mit einem vba-code die länder zuordnen kann und dass man dann damit im sheet arbeiten kann.

    gruss,

    marcus


      


    Betrifft: AW: gruppieren von daten von: OttoH
    Geschrieben am: 03.09.2003 13:10:58

    Hallo Marcus,

    dann mach's mal so:

    Private Sub Worksheet_Change(ByVal Target As Excel.Range)
        
        If Target.Address = "$A$1" Then
            Select Case [A1].Value
                Case "Deutschland", "Belgien", "Holland"
                    [B1].Value = "Europa"
                Case "Japan", "China", "Taiwan"
                    [B1].Value = "Asien"
                Case Else
                    [B1].Value = "sonstwo"
            End Select
        End If
        
    End Sub
    



    Gruß OttoH


      


    Betrifft: danke otto !! von: marcus
    Geschrieben am: 03.09.2003 16:00:53