Voiko laskea kaavaa samaan soluun? Eli jos on solu jossa luku 5. Siihen samaan soluun lisätään 3 niin automaattisesti se laskee yhteenlaskun 5 3 =8 kyseiseen soluun.
kaavaongelmia
9
1364
Vastaukset
- paavali50
Jos solussa A1 5
kirjoita vaikka soluun C1 3
aktivoi solu C1 Muokkaa -> kopioi
aktivoi solu A1 Muokkaa -> liitä määräten -> ja täppä kohtaan lisää ja OK. jos tarkoitit tätä.
jos solussa luku 3 ja samaan soluun kirjoitetaan uudelleen luku 5 niin summaa luvut ja tulos on 8.
Todellakin vuoden vaikein kyssäri... en keksi miten saisi summattua luvun joka on sama kuin vanha arvo solussa järkevällä tavalla.
Poistamalla kommentit koodista lisää kyllä saman arvon, mutta kysyy joka kerta jos solun arvo ei muutu "lisätäänkö?"- jos vastaus on kyllä niin lisää muuten ei
palataan asiaan myöhemmin
Public vika As String
Public summa As Double
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim Vastaus As Integer
On Error Resume Next
If Range(vika) summa Then
Range(vika) = Range(vika) summa
Else
' Vastaus = MsgBox("Lisätäänkö?", vbInformation vbYesNo)
' If Vastaus = vbYes Then
' Range(vika) = Range(vika) summa
' End If
End If
If Range(vika) = 0 Then Range(vika) = ""
vika = Target.Address
summa = Target
End Sub- T-N
En tiedä kelpaako sinulle tällainen vippaskonsti?
Opinpahan itse ainakin jotain uuttaa tätä pähkäillessäni! Kun en osannut muuten ratkaista käytin apuruutua (IV65536). Summa kertyy soluun A5, mihin myös uudet luvut syötetään. Virhetoiminnot puuttuvat.
Kunde varmaan stilisoi ja kommentoi mitä voisi tehdä fiksummin.
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address = "$A$5" Then
Application.EnableEvents = False
Dim valisumma As Long
Dim uusisumma As Long
If Range("IV65536").Value = 0 Then
Range("IV65536").Value = Target.Value
Application.EnableEvents = True
Exit Sub
End If
valisumma = Range("IV65536").Value
uusisumma = valisumma Target.Value
Range("IV65536").Value = uusisumma
Target.Value = uusisumma
Application.EnableEvents = True
End If
End Sub - T-N
T-N kirjoitti:
En tiedä kelpaako sinulle tällainen vippaskonsti?
Opinpahan itse ainakin jotain uuttaa tätä pähkäillessäni! Kun en osannut muuten ratkaista käytin apuruutua (IV65536). Summa kertyy soluun A5, mihin myös uudet luvut syötetään. Virhetoiminnot puuttuvat.
Kunde varmaan stilisoi ja kommentoi mitä voisi tehdä fiksummin.
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address = "$A$5" Then
Application.EnableEvents = False
Dim valisumma As Long
Dim uusisumma As Long
If Range("IV65536").Value = 0 Then
Range("IV65536").Value = Target.Value
Application.EnableEvents = True
Exit Sub
End If
valisumma = Range("IV65536").Value
uusisumma = valisumma Target.Value
Range("IV65536").Value = uusisumma
Target.Value = uusisumma
Application.EnableEvents = True
End If
End SubSiivosin tuon turhan ifin pois:
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address = "$A$5" Then
Application.EnableEvents = False
Dim valisumma As Long
Dim uusisumma As Long
valisumma = Range("IV65536").Value
uusisumma = valisumma Target.Value
Range("IV65536").Value = uusisumma
Target.Value = uusisumma
Application.EnableEvents = True
End If
End Sub T-N kirjoitti:
Siivosin tuon turhan ifin pois:
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address = "$A$5" Then
Application.EnableEvents = False
Dim valisumma As Long
Dim uusisumma As Long
valisumma = Range("IV65536").Value
uusisumma = valisumma Target.Value
Range("IV65536").Value = uusisumma
Target.Value = uusisumma
Application.EnableEvents = True
End If
End Subei toimi mulla...
T-N kirjoitti:
Siivosin tuon turhan ifin pois:
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address = "$A$5" Then
Application.EnableEvents = False
Dim valisumma As Long
Dim uusisumma As Long
valisumma = Range("IV65536").Value
uusisumma = valisumma Target.Value
Range("IV65536").Value = uusisumma
Target.Value = uusisumma
Application.EnableEvents = True
End If
End Subnyt ollaan saman taulun sisällä...
- T-N
kunde kirjoitti:
nyt ollaan saman taulun sisällä...
Hassua, mulla kyllä toimii. Joskus työn alla ei pelittänyt, kun oli jäänyt tuo: "Application.EnableEvents " asentoon False. Toimii taulukohtaisesti siis,
T-N kirjoitti:
Hassua, mulla kyllä toimii. Joskus työn alla ei pelittänyt, kun oli jäänyt tuo: "Application.EnableEvents " asentoon False. Toimii taulukohtaisesti siis,
toimii hienosti yhdelle solulle.
Itse ajattelin koodissani kyllä toimintaa kaikille mahdollisille soluille taulukossa, mutta en keksi miten summata kun sama luku syötetään uudelleen- T-N
kunde kirjoitti:
toimii hienosti yhdelle solulle.
Itse ajattelin koodissani kyllä toimintaa kaikille mahdollisille soluille taulukossa, mutta en keksi miten summata kun sama luku syötetään uudelleenmonella tapaa asiaa voidaan ajatella. Minun lähtökohtanani oli, että "summaavia soluja" on rajallinen määrä ja kyseisen solun arvon muuttaminen ajaa makron läpi.
En tiedä kävikö näin????
Ketjusta on poistettu 0 sääntöjenvastaista viestiä.
Luetuimmat keskustelut
Mies vinkkinä sulle
Jos pyytäisit kahville tai ihan mihin vaan, niin lähtisin varmasti välittämättä muista1038172- 1105723
- 2855134
- 495013
- 763787
- 583011
- 662727
Olet oikeasti ollut
Niin tärkeä mulle ja kaikki meidän väliltä on pilattu ei yksistään sinun toiminnalla vaan minun myös.222528Kuuluu raksutus tänne asti kun mietit
Pelkäätkö että särjen sydämesi vai mikä on? En mä niin tekisi mies koskaan 😘292512- 452471