Miten ihmeessä saan 4 riviä ylemmässä solussa olevan viittauksen (keskellä kaavaa ja viittaa toiselle sheetille) haettua keskelle uutta kaavaa.
Eli E21 solussa on on kaava:
=SIIRTYMÄ(Ruokapäiväkirja!$D$27;325;0;1;1)
ja haluaisin saada siitä solun E26 kaavaan viittauksen $D$352 (D27:stä 325 alas) alla esitetyllä tavalla
=SIIRTYMÄ(Ruokapäiväkirja!$D$352;25;0;1;1)
Mitä ihmettä pitäisi tehdä, jotta homma luonnistuisi automaattisesti. En tiedä pystyykö Excelillä hakemaan toisessa solussa olevia kaavoja tai niiden osia (suorat arvot ja kaavojen tuloksethan siirtyvät helposti), mutta jos joku tietää niin NYT SAA PÄTEÄ!!!
Vuoden pahin
1
494
Vastaukset
kuten arvelitkin ei Excelillä voi hakea toisesta solusta pelkkiä kaavoja- ainostaan kaavojen tuloksia.
VBA:lla asia on kuitenkin todella helppo tehdä. Pari tekstifunktiota ja tulosten yhdistäminen...
Tein nyt oman käyttäjän makron - liitä se moduuliin. Siihen soluun mihin haluat kaavan kopioituvan kirjoitat
=TeeKaava(E21;25)
missä Solu=E21 ja Siirtymä=25 (esimerkkisi mukaan), eli Solu on se solu, josta kaava kopioidaan(E21) ja Siirtymä(25) on siirtymä uudesta kaavasolusta. Kaava toimii vaikka vaihdat solunosoitetta esim.
Ruokapäiväkirja!D27--->Päiväkirja!D27
:-)
moduuliin...
Function TeeKaava(Solu As Range, Siirtymä As Integer) As String
Dim teksti As String
Dim eka As Integer
Dim toka As Integer
Dim osoite As String
Dim osoite1 As String
Dim osoite2 As String
Dim siirto As Integer
On Error Resume Next
Application.Volatile
teksti = Solu.FormulaLocal
eka = InStr(1, teksti, "!")
toka = InStr(1, teksti, ";")
'alkuperäinen offsetsolu
osoite1 = Mid(teksti, eka 1, toka - eka - 1)
eka = toka 1
toka = InStr(eka, teksti, ";")
siirto = Mid(teksti, eka, toka - eka)
'uusi offsetsolu
osoite = Range(osoite1).Offset(siirto, 0).Address
eka = InStr(1, teksti, "(")
toka = InStr(1, teksti, "!")
'alkuperäinen offsetsolu
osoite2 = Mid(teksti, eka 1, toka - eka)
TeeKaava = "=SIIRTYMÄ(" & osoite2 & osoite & ";" & Siirtymä & ";0;1;1)"
End Function
Ketjusta on poistettu 0 sääntöjenvastaista viestiä.
Luetuimmat keskustelut
Anteeksi mies
En vaan osaa kohdata sinua ja olla normaali. En tiedä mikä vaivaa. Samaan aikaan tekee mieli tulla lähelle ja kuitenkin579197Mietin aina vain
Minä niin haluaisin nähdä sinut. Ei tuo yhden ainoan kuvan katsominen paljon helpota... Miksi sinä et voisi olla se roh123639Hetken jo luulin, että en ikävöi sinua koko aikaa
Mutta nyt on sitten taas ihan hirveä ikävä jotenkin. Tiedätköhän sinä edes, kuinka peruuttamattomasti minä olen sinuun r292947Kysely lieksan miehille
Olemme tässä pohtineet tällaista asiaa, että miten on. Tästä nyt on paljon ollut juttua julkisuudessakin aina sanomaleht852258Palstan henkisesti sairaat ja lihavat
Täällä on sairaita, työttömiä ihmisiä kirjoittelemassa joilla ei ole tarkoituksena kuin satuttaa ihmisiä. Jos eksyt pals1142070Outoa että Trump ekana sanoutui irti ilmastosopimuksesta
kun Kaliforniaa riepottelee siitä johtuvat tuhoisat maastopalot. Hirmumyrskytkin ovat USA:ssa olleet tuhoisia.3671856Saan kengurakkaan kotiin viikon päästä
Mitä tapahtui? Martina hehkutti tätä stoorissaan reilu viikko sitten, mutta eipä aussimiestä Suomessa näkynyt, vaan tapa2411482FinFamin ryhmät
Älkää hyvät ihmiset luottako tähän tahoon. Ryhmiä on, mutta eivät ne toimi. Ihmisiä savustetaan ulos, vaikka näissä piir01231Olen vähän
Hysteerinen se on totta. Etkai ymmärrä miten syvästi tunnen sinua kohtaan. Ja olet aina lähelläni. Olet osa jo jotain. I101105Osmo Peltola voitti ansaitusti Kultaisen Venlan - Kirvoitti yleisöltä mahtavan reaktion!
JEE, onnea Osmo! Osmo Peltola voitti Vuoden esiintyjän Kultainen Venla -palkinnon. Isä-Peltsin ja Osmon luontoseikkailu721104