Taulukko on A1-J10 (=sata ruutua). Jokaisessa solussa on luku. Jokin näistä soluista merkataan esim. x:llä ja merkatun solun arvo olisi tarkoitus saada siirtymään soluun A1 toiselle välilehdelle.
Onko tämä ylipäänsä mahdollista ja jos on niin millä kaavalla?
Kiitos jo etukäteen, jos tää saadaan toimimaan!
Onko tämä ylipäänsä mahdollista ja jos on niin millä kaavalla?
Kiitos jo etukäteen, jos tää saadaan toimimaan!
Vastaukset 6
Vanhimmat
Private Sub Worksheet_Change(ByVal Target As Range)
On Error GoTo Err
Application.Calculation = xlManual
Application.EnableEvents = False
If (Not Intersect(Target, Range("A1:N10")) Is Nothing) And (UCase(Target.Value) = "X") Then
Application.Undo
Worksheets("Sheet2").Cells(Target.Row, Target.Column) = Target
Target = "X"
End If
Err:
Application.EnableEvents = True
Application.Calculation = xlAutomatic
End Sub
Tuo makro tulee siis kyseisen sheetin moduliin.
Nyt loppu taidot. Neuvotko äkkinäiselle selkeämmin? Kiitos!
Aluksi: Valintanauhan Developer välilehti ei oletettavasti näy Excelissä, joten ensin pitänee painaa hiiren oikealla nauhaa ja valita kohta Customize the Ribbon. Merkitse avautuvan ikkunan oikeanpuoleisesta ruudusta valituksi myös kohta Developer.
Developer välilehden vasemmasta reunasta pääsee Visual Basiciin. Avautuvan ikkunan vasemmassa reunassa on kohta Project Explorer, jossa pitäisi näkyä Excel-tiedostosi nimi: VBAProject (Book1) tms. Jos sen edessä on paina sitä. Tuplaklikkaa sen välilehden nimeä (Sheet1), johon haluat tuon toiminnan liitettävän. Oikealle aukeaa tyhjä ohjelmaikkuna. Liimaa yllä oleva makro siihen.
Muuta tarvittaessa nimeä "Sheet2". Ja, koska en lukenut kunnolla kysymystä, vielä seuraavat:
Range("A1:N10") pitäisi olla Range("A1:J10")
Rivi Worksheets("Sheet2").Cells(Target.Row, Target.Column) = Target Pitäisi olla Worksheets("Sheet2").Cells(1,1) = Target Ylempi rivi ei kopioisi solun sisältöä soluun A1, vaan samaan kohtaan kuin se oli alkuperäisellä sivulla.
helpompi tapa...
taulukkovalitsimesta alhaalla tilarivillä hiiren oikealla klikkaa taulukkoa ja avautuvasta valikosta näytä koodi ja liitä koodi sitten oikealle tyhjään tilaan...
Tämä toimii! Kiitos paljon!