Pitäisi saada siirrettyä kursoria makrolla esim. rivi alaspäin ja muutama sarake oikealle niin, ettei anneta uutta osoitetta, esim. siis ei B1, vaan siltä riviltä missä kursori sattuu olemaan, niin yksi rivi alaspäin. Miten moinen tehdään?
Kursorin siirto makrolla
9
917
Vastaukset
- Anonyymi
Mitä sinä sillä tiedfolla tekisit?
- Anonyymi
Sub siirry(r, c)
ActiveCell.Offset(r, c).Select
End Sub- Anonyymi
Tuo makro muuttaa aktiivisen solun paikkaa mihin tahansa suuntaan.
siirry(1,0) siirtää sitä rivin alaspäin. - Anonyymi
Anonyymi kirjoitti:
Tuo makro muuttaa aktiivisen solun paikkaa mihin tahansa suuntaan.
siirry(1,0) siirtää sitä rivin alaspäin.Ei ihan se mitä tarkoitin. Tuo makro valitsee vain esim. seuraavan solun vaikkapa alaspäin, mutta jos on piilotettuja rivejä seuraavana tuntematon määrä, niin pitäisi saada kursori siirtymään seuraavalle näkyvälle riville eli niin kuin nuolinäppäimellä tuo siirtyisi. Ongelmana tässä on se, että ei etukäteen tiedetä seuraavan näkyvän rivin osoitetta.
- Anonyymi
Anonyymi kirjoitti:
Ei ihan se mitä tarkoitin. Tuo makro valitsee vain esim. seuraavan solun vaikkapa alaspäin, mutta jos on piilotettuja rivejä seuraavana tuntematon määrä, niin pitäisi saada kursori siirtymään seuraavalle näkyvälle riville eli niin kuin nuolinäppäimellä tuo siirtyisi. Ongelmana tässä on se, että ei etukäteen tiedetä seuraavan näkyvän rivin osoitetta.
Do While rng.EntireRow.Hidden Or rng.EntireColumn.Hidden
Set rng = rng.Offset(1, 0)
Loop
rng.Select
Tuon pitäisi valita seuraava näkyvä solu. - Anonyymi
Anonyymi kirjoitti:
Ei ihan se mitä tarkoitin. Tuo makro valitsee vain esim. seuraavan solun vaikkapa alaspäin, mutta jos on piilotettuja rivejä seuraavana tuntematon määrä, niin pitäisi saada kursori siirtymään seuraavalle näkyvälle riville eli niin kuin nuolinäppäimellä tuo siirtyisi. Ongelmana tässä on se, että ei etukäteen tiedetä seuraavan näkyvän rivin osoitetta.
Tämä muuttaa aktiivisen solun paikkaa mihin tahansa suuntaan näkyvällä alueella:
Sub siirry(r, c)
dr = 0
Do
ActiveCell.Offset(Sgn(r), 0).Select
If ActiveCell.EntireRow.Hidden = False Then dr = dr + Sgn(r)
Loop While dr <> r
dc = 0
Do
ActiveCell.Offset(0, Sgn(c)).Select
If ActiveCell.EntireColumn.Hidden = False Then dc = dc + Sgn(c)
Loop While dc <> c
End Sub - Anonyymi
Anonyymi kirjoitti:
Do While rng.EntireRow.Hidden Or rng.EntireColumn.Hidden
Set rng = rng.Offset(1, 0)
Loop
rng.Select
Tuon pitäisi valita seuraava näkyvä solu.Tuosta alusta puuttuu Set Rng = ActiveCell
Lisäksi lopetusehdon pitäisi olla silmukan lopussa .
Set Rng = ActiveCell
Do
Set Rng = Rng.Offset(1, 0)
Debug.Print Rng.Address
Loop While Rng.EntireRow.Hidden Or Rng.EntireColumn.Hidden
Rng.Select Anonyymi kirjoitti:
Ei ihan se mitä tarkoitin. Tuo makro valitsee vain esim. seuraavan solun vaikkapa alaspäin, mutta jos on piilotettuja rivejä seuraavana tuntematon määrä, niin pitäisi saada kursori siirtymään seuraavalle näkyvälle riville eli niin kuin nuolinäppäimellä tuo siirtyisi. Ongelmana tässä on se, että ei etukäteen tiedetä seuraavan näkyvän rivin osoitetta.
Sub Siirry()
SendKeys "{Down}"
End Sub
@Kunde
Keep EXCELing- Anonyymi
kunde kirjoitti:
Sub Siirry()
SendKeys "{Down}"
End Sub
@Kunde
Keep EXCELingKiitos! Tuota juuri hain. Siitä tuli lopulta tämän näköinen:
Sub Siirry()
SendKeys "{Down}"
SendKeys "+{Right 10}"
End Sub
Lisäsin siihen myös valinnan.
Ketjusta on poistettu 0 sääntöjenvastaista viestiä.
Luetuimmat keskustelut
Jos nainen harrastaa seksiä
Useiden kanssa, miten se eroaa miesten mielestä siitä, jos miehellä on ollut useita s kumppaneita? Oletan että kaikki mi3483608Ikävöin sinua kokoyön!
En halua odottaa, että voisin näyttää sinulle kuinka paljon rakastan sinua. Toivon, että uskot, että olen varsin hullun192368Pihlaja-puulle
Illat on mulle pahimpia. En tiiä miks se olis vaan parasta yöstä toiseen nukkua sun kanssa ja herätä sun kasvoihin. Jos151940Päivieni piristys, missä olet?
Toit iloa ja valoa mun elämään ☀️ Nyt mennyt kohta viikko ettei ole nähty. Kaipaan nähdä sua silti ja pelkään vaikka tei141645Kova karman laki
Karman lain kautta pahantekijä tehdessään pahaa toteuttaa koston ja rangaistuksen sille jolle pahaa on tehty. Tämä tarko4171542Kysymys Kuhmolaisille
Hei. Olen 32 vuotias nainen ja muutin Kuhmoon noin 12 vuotta sitten. Mutta nyt täytyy ihmetellä ihan ääneen että onhan t391477Savimajasta lääketieteen tohtoriksi - ja ei tikkua ristiin
”Jos ihminen muuttaa savimajasta tänne kerrostaloon länsimaisen elintason piiriin ilman että tarvitsee panna tikkua rist2821450- 171314
Olen valtavan ihastunut
Yritin sen sinulle viime viikolla kertoa, mutta liikaa muuttujia ja isoja tunteita, niin en kyllä ollut kovin selkeä.631116Ensi viikolla tulen takaisin
Ja käyn varmaan siellä monta kertaa. Monta mahdollisuutta nähdä jos olet siellä päin201030