Terve,
Tarvitsisin apua seuraavanlaisen taulukon tekemiseen:
Soluun A1 syötetään mitta, suojatussa solussa B1 on kerroin ja suojatussa solussa C1 kerotaan A1*B1, johon tulostuu tulo. Tarvitsisin tulostuksen, eli enterin näpäyksen jälkeen lisää-painikkeen eli makron soluun D1, jota näpäyttämällä sekä syötetty mitta A1:stä, että tulostunut tulo C1:sta siirtyvät soluihin E1 ja E2. Näiden tietojen tulisi säilyä siten, että kun seuraava mitta syötetään, painetaan enteriä ja tämän jälkeen lisää-painiketta, solujen E1 ja E2 arvo kasvaa, syötetyn mitan ja tulon verran.
Kiitos etukäteen vastanneille.
Lisäys-nappi exceliin
7
696
Vastaukset
- Lisääjä
Tuo onnistuu ihan nauhoittamalla makron. Piirrä "nappi" ja liitä siihen nauhoittamasi makro. Alla nauhoittamani makro. Se poistaa ensin taulukon suojauksen (että suojattu C1 solu voidaan kopioida), kopioi A1 ja C1. Liittää sen E1 määräten (vain arvot, Lisää,Transponoi) ja suojaa taulukon uudestaan.
Sub Lisää()
ActiveSheet.Unprotect
Range("A1,C1").Select
Selection.Copy
Range("E1").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlAdd, SkipBlanks _
:=False, Transpose:=True
Application.CutCopyMode = False
ActiveSheet.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True
Range("A1").Select
End Sub- Aloittelija
Kiitos, kelpasi kuitenkin, kun tein kaiken alusta.
- Aloittelija
Kiitos,
Mutta aina sama herja "Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlAdd, SkipBlanks _
:=False, Transpose:=True" punastuu. Ei vaan saa onnistumaan. Olen koittanut useammalla tavalla. Onko ongelma alue E1 JA E2? Koitin ("E1,E2").
Jos voisit tuumata asiaa, ja yrittää auttaa.
Perään toinen pulma:
Onnistuin tekemää soluun A1 alasvetovelikon 1,2,3,4,5 "Tietojen kelpoisuuden tarkistaminen"-ominaisuudella. Soluun B1 syötän luvun. Soluun C1 tein alsvetovalikon kuten edellä (1,2,3,4,5). Soluun D1 pyrin saamaan laskutoimituksen, jossa solun A1 alasvetovalikosta valittu luku määrittää solun C1 valikosta tietyn luvun, jolla kerrotaan solun B1 syöte.
=JOS(TAI(A1=1);TULO(B1*C1);(A1=2)*TULO(B1*C2))
toimii moitteettomasti, mutta jos yritän liittää kolmannen JOS-ehdon, esimerkiksi ;(A1=3)*TULO(B1*C3) yllä olevaan kaavaan
=JOS(TAI(A1=1);TULO(B1*C1);(A1=2)*TULO(B1*C2)), seuraa herja: "Olet kirjoittanut tähän funktioon seuraavat argumentit: Liian monta. Onko ideoita, miten jatkaa.
Jälleen etukäteen kiittäen
AloittelijaKirjoita koodieditorissa
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlAdd, SkipBlanks _
:=False, Transpose:=True
kaikki yhdelle riville pötköön ja poista alaviiva merkki ( _ ) koodiriviltä ( helpoin tapa fiksata aloittelijan)
Keep EXCELing
@Kunde- Aloittelija
Kiitos,
Kelpasi sellaisenaan, kun tein koko taulukon uusiksi
Aloittelija
- jossittelija
Eka ongelmasi on osaamisalueeni ulkopuolella. Ihan noiden kaavojen kanssa olen aika paljon värkännyt, ja minusta näyttää, että et ole oikein nyt hahmottanut kunnolla, mitä tuossa kirjoittamassasi JOS-kaavassa lukee. Tuo koko TAI on tuossa yhtä tyhjän kanssa. Tuo kaavasi pitää nyt lukea siten, että jos A1=1, niin sitten lasketaan B1*C1, ja jos A1 on jotakin muuta kuin 1, niin sitten pitäisi laskea sen viimeisen puolipisteen jälkeinen laskutoimitus, mutta siellä onkin jo jokin valmis yhtälö, joten ei varmaan ihan toimi tuokaan? Minusta myöskin sana TULO siellä kaavassa on turha, kun siellä on B1*C1, niin älyäähän ohjelma jo kertomerkistä, että tuloa halutaan.
En ole ihan varma ymmärsinkö oikein, mitä ajat takaa, mutta jos ymmärsin, niin ehkä sitten pitäisi käyttää sisäkkäisiä JOS-funktioita. Helpompi tapa voi olla olemassa, mutta olen itse käyttänyt näitä aika paljon.
=JOS(A1=1;B1*C1;(JOS(A1=2;B1*C2;(JOS(A1=3;B1*C3;(JOS(A1=4;B1*C4);B1*C5))))))
Nyt kaava tutkii ensin onko A1=1. Jos on, lasketaan B1*C1, ja homma selvä. Jos ei, niin se tutkii onko A1=2. Jos on, niin laskee B1*C2. jne. Ymmärsin, että A1 on aina joko 1,2,3,4 tai 5. Siksi viimeisessä kohdassa ei ole enää JOSsittelua. Kun ei ole ollut 1,2,3 eikä 4, niin sitten lasketaan ikään kuin olisi 5. Tuossa pitää vaan olla varovainen sulkumerkkien kanssa, että niitä on siellä lopussa tasan oikea määrä. On muistaakseni jokin raja paljonko näitä JOS-funktioita voi laittaa sisäkkäin, mutta kyllä sinne nuo 5 ainakin menee.- Aloittelija
Kiitos,
Kyllä toimii.
Aloittelija
Ketjusta on poistettu 0 sääntöjenvastaista viestiä.
Luetuimmat keskustelut
Kenellä oli ryppyinen paita, josta Halla-aho mielensä pahoitti?
Ei ollut Keskisarja, jonka paita vain repsotti housujen päällä puolittain. Muistatteko tapausta?433040Miksi Halla-aho on niin hyvin menestynyt - mutta punavihreä ei?
Hyvin näkee kuinka punavihreää ottaa pahasti päähän kun Virta on taas töppäillyt pahasti. Ja kun punavihreä ei pärjää, n352258Ruoan arvonlisävero menee käytännössä tukijussille
Ilman juomia elintarvikkeiden myynti vuonna 2025 oli reilut 15 miljardia euroa. Tuolla tasolla arvonlisävero pyörii pari582171Vihreät REPEÄMÄSSÄ oijoijoi....Virran sekoilut on liikaa
Jo ennestään vihreiden kannatus on suossa vaikka puolue istuu oppositiossa, nyt tuli Virran temppu kun häipyi tuosta vaa832041Ruotsissa uusi vakava ongelma: Vanhusten seksuaalinen hyväksikäyttö
palvelutaloissa ja kotihoidossa. Tämäkin on ihan puhtaasti väärän maahanmuuton vaikutusta, sillä tekijät ovat kaikki keh561757Poliisi tutkii keskiviikkoiltana Kiuruveden keskustassa tapahtunutta väkivallantekoa.
Itä-Suomen poliisi tutkii Kiuruveden keskustassa keskiviikkoiltana tapahtunutta epäiltyä väkivallantekoa. Tapaus on herä181573Työeläkkeiden maksaminen lopetettava ASAP.
"Vanhimmat sukupolvet ovat saaneet vastinetta eläkemaksuilleen moninkertaisesti nykyisiin ja tuleviin sukupolviin verr641508Mika Poutala salasi osallistumisensa Erikoisjoukkoihin
Poutala ryhtyi ministeriksi 13.6.2025 ja 5.8.2025 ilmoitettiin hänen olevan seuraavalla Erikoisjoukot-kaudella. http441295Siis HYI OLKOON! Ihmiset, eikö enää ole mitään rajaa?
https://www.iltalehti.fi/viihdeuutiset/a/4142eeb2-a589-4109-a5d0-e8f341df585c "Susanna Penttilän seksibussi kauhistutta1261228Puuma Martina iski nuoren miehen
Martina ja Hajji Muhis oikealta nimeltään Muhammad Abdilrasoon hempeilivät Tallinnassa. Hajji 28 vuotias ja Martina pian163991