Podivně fungující IF

Programy pro práci v kanceláři (Word, Excel, Access…=>Office)

Moderátor: Mods_senior

Syny09
nováček
Příspěvky: 5
Registrován: červen 12
Pohlaví: Muž
Stav:
Offline

Podivně fungující IF

Příspěvekod Syny09 » 24 čer 2012 15:03

Zdravíčko potřeboval bych vysvětlit jak ve VBA funguje rozhodování podmínek

Kód: Vybrat vše

adr = Target.Address
If Len(adr) = 5 Or 11 Then
sl = Mid(adr, 2, 1)                   
rad = Mid(adr, 4, 2)                   
End If
If Len(adr) = 6 Or 13 Then
sl = Mid(adr, 2, 1)
rad = Mid(adr, 4, 3)
End If

pokud mám Target. Addres např. $A$12 což znamená délka je 5 do proměné sl se vloží A do proměnné rad se vloží "12"
pokud mám Target. Addres např. $A$106 což znamená délka je 6 do proměné sl se vloží A do proměnné rad se vloží "106"
ale
pokud mám Target. Addres např. $A$12:$A$13 což znamená délka je 11 do proměné sl se vloží A do proměnné rad se vloží "12:"
pokud mám Target. Addres např. $A$106:$A$107 což znamená délka je 13 do proměné sl se vloží A do proměnné rad se vloží "106"
nechápu proč u té třetí situace se tam vloží ta : , dokáže mi to někdo vysvětli popř. nahradit lepším kodem? dekuji

Reklama
guest
Pohlaví: Nespecifikováno

Re: Podivně fungující IF

Příspěvekod guest » 24 čer 2012 20:04

If (Len(adr) = 5) Or (Len(adr) = 11) Then

Přehledněji to ale vyřešíte přes Select...Case.


Zpět na “Kancelářské balíky”

Kdo je online

Uživatelé prohlížející si toto fórum: Žádní registrovaní uživatelé a 2 hosti