Hirdetés

Keresés

Új hozzászólás Aktív témák

  • Fferi50

    Topikgazda

    válasz Csatravi #36810 üzenetére

    Szia!

    A kisbetű-nagybetűre gondoltál?
    Ez a képlet jó rá:
    =ÉS(VAGY(ÉS(KÓD(BAL(B2;1))>96;KÓD(BAL(B2;1))<123);ÉS(KÓD(BAL(B2;1))>64;KÓD(BAL(B2;1))<91));SZÁMÉRTÉK(JOBB(B2;3))>0;HOSSZ(B2)=4)

    Ha az adatérvényesítésnél elhagyod a hibajelzést, betehetsz figyelmeztetést, amikor kijelöli a cellát. Ezzel együtt több dolog együttes alkalmazásával rá lehet mutatni a hibára:
    A B2 cellára feltételes formázást használni az alábbi képlettel:

    =HIBÁS(ÉS(VAGY(ÉS(KÓD(BAL(B2;1))>96;KÓD(BAL(B2;1))<123);ÉS(KÓD(BAL(B2;1))>64;KÓD(BAL(B2;1))<91));SZÁMÉRTÉK(JOBB(B2;3))>0;HOSSZ(B2)=4))
    szinesre állítva a hátteret.
    A C2 cellába beírni a következő képletet:
    =HA(HIBÁS((ÉS(VAGY(ÉS(KÓD(BAL(B2;1))>96;KÓD(BAL(B2;1))<123);ÉS(KÓD(BAL(B2;1))>64;KÓD(BAL(B2;1))<91));SZÁMÉRTÉK(JOBB(B2;3))>0;HOSSZ(B2)=4)));"HIBÁS ADAT";"")
    A B4 cella képletét az alábbiak szerint megadni:
    =HA(C2="HIBÁS ADAT";"HIBÁS KERESÉS";HAHIBA(FKERES(B2;$A$7:$B$17;2;0);"Nincs adat"))

    Így elvileg beírhat nem odavaló dolgokat is, de a hibaüzenetet megkapja több formában is.

    Üdv.

  • Delila_1

    veterán

    válasz Csatravi #36810 üzenetére

    Egy másik megközelítés szerint egy laphoz rendelt makró figyeli a B2 cellába bevitt adatot.

    Private Sub Worksheet_Change(ByVal Target As Range)
    Dim sor As Variant

    If Target.Address = "$B$2" And Target <> "" Then
    Application.EnableEvents = False
    Range("C2,B4") = ""

    If Len(Target) <> 4 Then
    Range("C2") = "Hibás érték"
    Application.Wait Now + TimeValue("0:00:02")
    Range("B2") = ""
    Range("B2").Select
    Application.EnableEvents = True
    Exit Sub
    End If

    If IsNumeric(Left(Target, 1)) Then
    Range("C2") = "Hibás érték"
    Application.Wait Now + TimeValue("0:00:02")
    Range("B2") = ""
    Range("B2").Select
    Application.EnableEvents = True
    Exit Sub
    End If

    If Not IsNumeric(Right(Target, 3)) Then
    Range("C2") = "Hibás érték"
    Application.Wait Now + TimeValue("0:00:02")
    Range("B2") = ""
    Range("B2").Select
    Application.EnableEvents = True
    Exit Sub
    End If

    sor = Application.Match(Target, Columns(1), 0)
    If IsError(sor) Then
    Range("B4") = "Hibás adat"
    Else
    Range("B4") = Cells(sor, "B")
    End If

    Range("B2").Select
    Application.EnableEvents = True
    End If
    End Sub

Új hozzászólás Aktív témák