< návrat zpět
MS Excel
Téma: Excel macro - Find
Zaslal/a barton2 19.2.2016 10:39
Ahojte, potreboval by som pomoc s vztvorenim jednoducheho makra v excely. Som uplny zaciatocnik a akosi sa mi to nedari spravit.
Mam v subore dva sheety SUM1 a SUM. Chcel by som macro ktore by fungovalo na principe: Hladaj hodnotu bunky zo sheetu SUM (tam kde je aktualne oznacena bunka, nie fixna bunka) v sheete SUM1.
Tak ze hodnota bunky ktora je oznacena v SUM bude hladana v SUM1. Neviem ako to urobit. Spravil som nieco taketo ale stale mi to hlada iba hodnotu v bunke B1
Dakujem
Sub Find()
'
' Find Macro
'
'
Sheets("SUM1").Select
Cells.Find(What:=Sheets("SUM").Range("B1").Value, After:=ActiveCell, LookIn:=xlFormulas, _
LookAt:=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, _
MatchCase:=False, SearchFormat:=False).Activate
End Sub
Devil(19.2.2016 11:25)#030217 Postup máš dobrej, ale jestli chceš aby to bylo podle aktuální buňky, musíš na to mít nějakou proměnnou.. nejsem specialista, ale asi takto:
Sub Makro1()
Dim hledej As String
hledej = ActiveCell.Value
Sheets("SUM1").Select
Cells.Find(What:=hledej, After:=Range("A1"), LookIn:=xlFormulas, LookAt _
:=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, MatchCase:= _
False, SearchFormat:=False).Activate
End Subcitovat
barton2(19.2.2016 12:28)#030219 Devil napsal/a:
Postup máš dobrej, ale jestli chceš aby to bylo podle aktuální buňky, musíš na to mít nějakou proměnnou.. nejsem specialista, ale asi takto:
Sub Makro1()
Dim hledej As String
hledej = ActiveCell.Value
Sheets("SUM1").Select
Cells.Find(What:=hledej, After:=Range("A1"), LookIn:=xlFormulas, LookAt _
:=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, MatchCase:= _
False, SearchFormat:=False).Activate
End Sub
Vdaka Devil, tento postup funguje. Presne toto som hladal
citovat
elninoslov(19.2.2016 18:51)#030240 Ešte by som tam asi testoval, či stojíte v korektnej zdrojovej oblasti, a či je skok uskutočniteľný. A bez Selectu, za ktorý sa tu kameňuje
Sub HladajBunku()
Dim hledej, Najdene
If Not Intersect(ActiveCell, Range("A1:H10")) Is Nothing Then
hledej = ActiveCell
With Sheets("SUM1")
Set Najdene = .Cells.Find(What:=hledej, After:=.Cells(1), LookIn:=xlValues, LookAt:=xlWhole, _
SearchOrder:=xlByRows, SearchDirection:=xlNext, MatchCase:=False)
End With
If Not Najdene Is Nothing Then Application.Goto Najdene, True
End If
End Subcitovat