Taulukosta käytetetään kulloinkin merkityn sarakkeen (C - K) tietoja. Käytettävä sarake merkitään x:llä riville 7 ja tieto merkitystä sarakkeesta on solussa B7 =MATCH("x";A7:K7). Oheisen makron pitäisi pitää huoli siitä, että vain yksi sarake voi olla kerrallan merkittynä. Ennen tämä on toiminutkin, mutta nyt se antaa Circular Reference -virheilmoituksia.
Virheilmoitus poistuu, kun muutan solun C7 kaavan =MATCH("x";C7:K7) 2 (tai poistan sen kokonaan), mutta sen jälkeen makron toiminta muuttuu: Se poistaa vanhan merkinnän vasta toisella yrittämällä. Jos painan tyhjässä solussa Del-näppiä, solu tulee merkityksi.
Makro toimii tyhjään pohjaan kopioituna oikein.
Private Sub Worksheet_Change(ByVal Target As Range)
Application.Calculation = xlManual
Application.EnableEvents = False
If Target.Row = 7 And Target.Column > 2 And Target.Column < 12 Then
For i = 3 To 11
Cells(7, i) = ""
Next i
Target.Value = "x"
End If
Application.EnableEvents = True
Application.Calculation = xlAutomatic
End Sub
Worksheet_Change kummallisuus
5
145
Vastaukset
muuta kaavasi =MATCH("x";C7:K7)
- 15+4
Kuten mainitsin, tämä poistaa kyllä virheilmoituksen, mutta makro toimii sen jälkeen väärin. En keksi tälle mitään järjellistä syytä.
ei se noin voikaan toimia, kun ei mikään muutu
vaihda tapahtuma
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Not Intersect(Range("C7:K7"), Target) Is Nothing Then
Range("C7:K7") = ""
Target = "x"
Range("B7") = Target.Column
End If
End Sub
Keep EXCELing
@Kunde
- 15+4
Esittämäsi makro näyttää paljon fiksummalta, mutta toimii minulla tasan samalla tavalla väärin kuin omanikin:
Ruksi on lähtötilanteessa vaikka sarakkeessa C. Kun merkkaan sen sarakkeeseen D, on ruksit ensin molemmissa sarakkeissa. Kun toistan saman uudelleen saan ruksin jäämään vain sarakkeeseen D. Jos en yritä toista keraa samaa, vaan siirryn E:hen, ruksi poistuu C:stä, mutta jää D:hen. Edellinen paikka jää siis jostain kumman syystä muistiin. Saan ruksin heti ensimmäisellä kerralla pelkästään haluttuun sarakkeeseen vain, jos painan Del-nappia tässä sarakkeessa.
Jos makro toimii tyhjässä pohjassa, miksi se ei toimi tässä vanhassa ja miksi se on ennen toiminut. Kyseisen sivun modulissa ei ole muuta koodia. Office versio on 2007.tapanani ei ole lähetellä "ei toimivia" ratkaisuja...
"Ruksi on lähtötilanteessa vaikka sarakkeessa C. Kun merkkaan sen sarakkeeseen D, on ruksit ensin molemmissa sarakkeissa"
paljastaa sen, ettei lähettämääni koodia suoriteta, koska koodihan reagoi valinnan muutokseen eli esimerkissäsi siirryt sarakkeeseen D, jolloin koodi suoritetaan ja se laittaa X ko.soluun jos se on alueella C7:K7 sekä laittaa B7 ko. solun sarakenumeron. Nyt sanoit " Ruksi on lähtötilanteessa vaikka sarakkeessa C. Kun merkkaan sen sarakkeeseen D..". eli joku muu koodi häslää taustalla ...
siis lähettämässäni koodissa vain valitset solun alueelta C7:K7 jase on siinä.
voit kokeilla koodia askel askeleelta kisäämällä VBA editorin puolella BEBUG/Toggle Break Point koodini ekalle riville tai valitse koodissa eka rivi ja klikkaa sitä vasemmalla olevaa harmaaata palkkia ja sitten kokeilet valita soluja ja katsot mitä koodisi todella tekee...
Keep EXCELing
@Kunde
Ketjusta on poistettu 0 sääntöjenvastaista viestiä.
Luetuimmat keskustelut
Kiky-maksuista valehtelu persujen törkein vaalipetos
Perusduunarina koen pahimmaksi persujen vaalipetokseksi "työmies" Putkosen lupaaman työntekijöiltä perittävien kiky-maks795922Persujen kannatusromahdus ilahduttaa
Siin' ei hyvä häviä. Luotto parempaan tulevasuuteen alkaa taas palautua.1364359Onko Sdp:n romahdus pienpuolueeksi alkanut?
Mikään puolue ei kykene selviytymään loputtomasti, jos sitä repii jatkuvasti sisäiset ristiriidat ja kyvyttömyys päättää1143706- 1333100
Avopuoliso, mies-/naisystävä vai mikä?
Kävin eilen irl keskustelun, joka jätti minut pohtimaan seuraavaa ... millä nimityksellä kutsua henkilöä, jonka kanssa o1742709En malta odottaa, että Lindtman pääsee suhmuroimaan pääministerinä
kun pitää sopeuttaa 10 miljardin edestä, ja eläkkeisiinkin voidaan puuttua Antin mielestä. (Demarien kannattajissa suuri762644Riikka ohoi! Saksa alensi bensaveroa, missä euron bensa?
Perussuomalaisten yksi vaalilupauksista oli euron bensiini suomalaisille autoilijoille. Ei ole näkynyt. Jopa vasemmis52615Huvittava ilmiö: Vasemmistolaiset uskoo sokeasti SDP:n parantavan heidän
elämäänsä, jos demarit johtaa seuraavaa hallitusta (Kyse on siis palstan vasemmistolaisista) Totuus on toinen, nimittäi632489Pitkän päivän ilta
Tarina elämättömästä miehestä, jonka elämän täytti velvollisuudentunto. Pikkutarkka, huolellinen, hyvällä katsottu, miel1232226Totuus sattui demareihin, vaativat asiallisen jutun poistoon
ja oli vielä suosittu, mutta kun demarit tarpeeksi valittivat, niin poistettiin. Raukkamaista toimintaa. Eli siis juttu491907