Ahoj, neví někdo proč mi makro v přiloženém souboru nevyhledá hodnotu Datum2 ve sloupci hodnot ?
Nějak s těmi vyhledávacími funkcemi poslední dobou bojuji :-/
VBA - find - proč makro nefunguje? Vyřešeno
- Branscombe
- Level 3
- Příspěvky: 469
- Registrován: červen 09
- Pohlaví:
- Stav:
Offline
VBA - find - proč makro nefunguje?
- Přílohy
-
- find.xlsm
- (13.24 KiB) Staženo 21 x
Naposledy upravil(a) Ltb dne 02 bře 2012 09:36, celkem upraveno 1 x.
Důvod: Doplnění nadpisu
Důvod: Doplnění nadpisu
-
- Level 3
- Příspěvky: 452
- Registrován: leden 12
- Bydliště: Země, bohužel...
- Pohlaví:
- Stav:
Offline
- Kontakt:
Re: VBA - find
Ahoj,
možná to bude tím, že tam není makro? Nebo je to makro v jiném sešitu, ale v tomhle není a ani není jasné kde je v tomto dokumentu Datum2.
možná to bude tím, že tam není makro? Nebo je to makro v jiném sešitu, ale v tomhle není a ani není jasné kde je v tomto dokumentu Datum2.
Pokud je to vše.
Vše co znám z VBA jsem se naučila tady na fóru, na Office.lasakovi, david-zbiral.cz a hlavně hledáním na googlu.
SZ není poradna, na pokládání dotazů je tu fórum. Děkuji.
Vše co znám z VBA jsem se naučila tady na fóru, na Office.lasakovi, david-zbiral.cz a hlavně hledáním na googlu.
SZ není poradna, na pokládání dotazů je tu fórum. Děkuji.
- Branscombe
- Level 3
- Příspěvky: 469
- Registrován: červen 09
- Pohlaví:
- Stav:
Offline
Re: VBA - find - proč makro nefunguje?

Kód: Vybrat vše
Option Explicit
Sub Vyhledej()
Dim Datum As Range, Datum2 As Range
Set Datum = Worksheets("List1").Range("C1")
With Worksheets("List1").Range("A1:A31")
Set Datum2 = .Find(Mesic, LookIn:=xlValues, LookAt:=xlWhole, SearchOrder:=xlByRows, SearchDirection:=xlPrevious)
End With
Datum2.Select
Set Datum = Nothing
Set Datum2 = Nothing
End Sub
-
- Level 3
- Příspěvky: 452
- Registrován: leden 12
- Bydliště: Země, bohužel...
- Pohlaví:
- Stav:
Offline
- Kontakt:
Re: VBA - find - proč makro nefunguje?
Použila bych následující.
Prohledá zadanou oblast a označí buňku se shodou.
Kód: Vybrat vše
Sub vyhledej()
Dim datum As Date
Dim oblast As Variant
Dim bunka As Variant
datum = Range("C1")
Set oblast = Range("A1:A31")
For Each bunka In oblast
If bunka = datum Then
ActiveSheet.Cells(bunka.Row, 1).Select
Exit For
End If
Next
End Sub
Prohledá zadanou oblast a označí buňku se shodou.
Pokud je to vše.
Vše co znám z VBA jsem se naučila tady na fóru, na Office.lasakovi, david-zbiral.cz a hlavně hledáním na googlu.
SZ není poradna, na pokládání dotazů je tu fórum. Děkuji.
Vše co znám z VBA jsem se naučila tady na fóru, na Office.lasakovi, david-zbiral.cz a hlavně hledáním na googlu.
SZ není poradna, na pokládání dotazů je tu fórum. Děkuji.
- Branscombe
- Level 3
- Příspěvky: 469
- Registrován: červen 09
- Pohlaví:
- Stav:
Offline
Re: VBA - find - proč makro nefunguje?
Hm... Díky, ale to mi neřeší můj problém, jelikož tohle je sakra zdlouhavé ! 
To je uplně jiné řešení, které jsem nepoužil, jelikož mi záleží na rychlosti a nemohu takto ztrácet čas v makru :-/
Neví někdo jak přizpůsobit vyhledávací příkaz Worksheets("").Range("").Find(....) ?

To je uplně jiné řešení, které jsem nepoužil, jelikož mi záleží na rychlosti a nemohu takto ztrácet čas v makru :-/
Neví někdo jak přizpůsobit vyhledávací příkaz Worksheets("").Range("").Find(....) ?
-
- Level 3
- Příspěvky: 452
- Registrován: leden 12
- Bydliště: Země, bohužel...
- Pohlaví:
- Stav:
Offline
- Kontakt:
Re: VBA - find - proč makro nefunguje?
Nevím co je na tomhle zdlouhavé, i 3000 buněk zvládne během mžiku, ale je fakt, že přes milion buněk makru už pár sekund zabere.
Našla jsem tohle a funguje to nejspíš jak potřebujete. Stačí jen hledat.
Našla jsem tohle a funguje to nejspíš jak potřebujete. Stačí jen hledat.
Kód: Vybrat vše
Sub Find_First()
Dim FindString As Date
Dim Rng As Range
FindString = CLng(Range("C1"))
With Sheets("List1").Range("A:A")
Set Rng = .Find(What:=FindString, _
After:=.Cells(.Cells.Count), _
LookIn:=xlFormulas, _
LookAt:=xlWhole, _
SearchOrder:=xlByRows, _
SearchDirection:=xlNext, _
MatchCase:=False)
If Not Rng Is Nothing Then
Application.Goto Rng, True
Else
MsgBox "Nothing found"
End If
End With
End Sub
Pokud je to vše.
Vše co znám z VBA jsem se naučila tady na fóru, na Office.lasakovi, david-zbiral.cz a hlavně hledáním na googlu.
SZ není poradna, na pokládání dotazů je tu fórum. Děkuji.
Vše co znám z VBA jsem se naučila tady na fóru, na Office.lasakovi, david-zbiral.cz a hlavně hledáním na googlu.
SZ není poradna, na pokládání dotazů je tu fórum. Děkuji.
- Branscombe
- Level 3
- Příspěvky: 469
- Registrován: červen 09
- Pohlaví:
- Stav:
Offline
Re: VBA - find - proč makro nefunguje? Vyřešeno
Tak už jsem zjistil proč toto funguje a to moje ne, bylo to v definování kam se má dívat, konkrétně "LookIn:=xlFormulas" .. Taková blbost, jinak díky za rady
-
- Mohlo by vás zajímat
- Odpovědi
- Zobrazení
- Poslední příspěvek
-
- 5
- 7894
-
od Stenatko
Zobrazit poslední příspěvek
03 dub 2025 21:42
-
-
Problémy v síti na obrázku - proč nemůžou počítače komunikovat mezi sebou Příloha(y)
od zuzana3 » 25 pro 2024 20:33 » v Administrace sítě - 7
- 4854
-
od zuzana3
Zobrazit poslední příspěvek
25 pro 2024 22:23
-
-
- 7
- 3552
-
od martanius
Zobrazit poslední příspěvek
17 led 2025 02:29
-
-
T490s nefunguje trackpoint UPDATE Příloha(y)
od Sadelník1234 » 17 led 2025 21:49 » v Problémy s hardwarem - 3
- 3217
-
od kecalek
Zobrazit poslední příspěvek
20 led 2025 16:00
-
-
-
Snímač otisku najednou nefunguje, laptop Příloha(y)
od frisby » 17 srp 2024 22:18 » v Problémy s hardwarem - 1
- 1675
-
od frisby
Zobrazit poslední příspěvek
18 srp 2024 10:46
-
Kdo je online
Uživatelé prohlížející si toto fórum: Žádní registrovaní uživatelé a 2 hosti