Adosssss
28.03.10,16:08
Zdravím vás lidi,
prosím vás budte tak hodní a poraďte mi jen s takovou maličkostí, která mi nejde.

Máte tabulku dejme tomu od A1 do F8 s jmény lidí
Pro představu načrtnu sem:

Středisko / Den Pondělí Úterý Středa Čtvrtek Pátek
A Hak Hak Janda Vach Nový
B Nový Nový Hak Flégl Král
C Janda Janda Dobrý Král Vach
D Dobrý Král Král Hak Hak
E Jiřička Starý Jiřička Janda Malý
F Král Flégl Flégl Malý Flégl
G Malý Malý Malý Jiřička Jiřička

1) Vyzve uživatele k zadání libovolného textového řetězce - příjmení (např. Hak)
2) Zjistí počet výskytů tohoto řetězce v tabulce (testuje vyplněnou oblast, která může být libovolně velká)
3) Zobrazí zjištěný výsledek

Já jsem se pokoušel to udělat takto ale nešlo to:

y = InputBox("Zadejte příjmení")
For Each x In Cells(1).CurrentRegion
If x = y Then
MsgBox (y)
' MsgBox (CInt(y))
End If
Next


Jednoduše, všechno funguje akorát to potřebuji nějak překonvertovat aby se v tom MsgBoxu ukázalo číslo, kolikrát je v té tabulce po zadání do InputBoxu to jméno, ovšem mě se pořád ukazuje jen to jméno. :o

Napište mi kdyžtak na mail: mladeznickaa@seznam.cz
Dokud na to nepříjdu, tak dneska neusnu :D ..
Děkuji všem :-)
PaloPa
28.03.10,16:32
Cez makro nasledovne (výskyt mena cez nápočet pomocnej premennej i):

Sub Makro()
Dim i As Integer
Dim xRng As Range

Set xRng = Selection 'resp. Range("C3:G9")

y = InputBox("Zadejte příjmení")
For Each x In xRng
If x = y Then
i = i + 1
End If
Next
MsgBox _
"Meno '" & y & vbCrLf & _
"v oblasti '" & xRng.Address & vbCrLf & _
"sa vyskytuje '" & CStr(i) & "' krát."

End Sub


Ale dá sa to i jednoduchšie, bez makra, funkciou:

=COUNTIF(C3:G9;"Hak")
alebo cez array funkciu:

{=SUM(IF(C3:G9="Hak";1))}
Adosssss
28.03.10,18:22
Díky, už jsem na to potom také přišel, obdobně. .