Ylikerroin.com
Suomen suurin vedonlyöntisivusto
Tänään on 20.01.2018, 10:21

Kaikki ajat ovat UTC + 2 tuntia



Aloita uusi ketju Vastaa viestiin  [ 6 viestiä ] 
Kirjoittaja Viesti
 Viestin otsikko: Excel-ongelma, apuja
ViestiLähetetty: 06.04.2004, 16:14 
Status: JäsenLiittynyt: 08.12.2003, 05:16Viestit: 18Paikkakunta: Espoo
Pisteitä: 0
Ongelma on siis seuraavanlainen, että pitäisi käydä soluja tietyltä sarakkeelta yksitellen läpi (ylhäältä alaspäin) niin kauan, kun kyseisellä sarakkeella on soluissa jotakin muuta kuin tyhjää. Jokaisella rivillä tallennetaan sitten saman rivin toisessa sarakkeessa oleva arvo tiettyyn soluun tämän läpi käytävän sarakkeen sisällön perusteella. Siis kaikki, jossa on sama merkkijono tallentavat saman rivin toiselta sarakkeelta olevan solun arvon toisaalle määrättyyn soluun. Onkohan tämä nyt tarpeeksi hankalasti ilmaistu, mutta toivottavasti joku saa tolkkua ;)

Seve
0
Ylös
  Profiili
 
 Viestin otsikko:
ViestiLähetetty: 06.04.2004, 18:31 
Status: JäsenLiittynyt: 07.12.2003, 10:14Viestit: 88Paikkakunta: Helsinki
Pisteitä: 2
Eiköhän paras täsmälääke tuollaiseen sarakkeen rivien arvoja haistelevaan tarpeeseen ole VBA-koodin (=makro) luonti. Tarvitsisi tosin murusen enemmän infoa elikkäs faktaa tarpeesta. "Tiettyyn soluun" ja "määrättyyn soluun" kaipaavat konkretiaa kaveriksi, ennen Excelin käynnistämistä :wink:

Jos taas taulukkosi on "kiinteä-rakenteinen", niin sisäkkäisillä IF-funktioilla pärjää jo aika pitkälle.
0
Ylös
  Profiili
 
 Viestin otsikko:
ViestiLähetetty: 06.04.2004, 21:43 
Status: JäsenLiittynyt: 08.12.2003, 05:16Viestit: 18Paikkakunta: Espoo
Pisteitä: 0
Konkreettisesta esimerkistä käy vaikkapa tapaus, jossa listataan lyötyjä vetoja. Ylös kirjataan vedon päivämäärä, veto ja voitto/tappio. Tallaisesta listasta sitten kasataan lista, jossa on jokaisen päivän saldo päivämääränsä perässä. Eli tuosta vetoja sisältävältä listalta noukitaan tietyn päivämäärän voitot johonkin soluun summaksi. Selvitäänkö if-funktioilla. Itsellä ei ainakaan ole vielä leikannut, tosin en kovinkaan kova velho tuon excelin kanssa ole..

Kiitokset vastauksista etukäteen..


Seve
0
Ylös
  Profiili
 
 Viestin otsikko:
ViestiLähetetty: 06.04.2004, 22:29 
Status: JäsenLiittynyt: 10.02.2003, 15:15Viestit: 259
Pisteitä: 2
Seve kirjoitti:
Konkreettisesta esimerkistä käy vaikkapa tapaus, jossa listataan lyötyjä vetoja. Ylös kirjataan vedon päivämäärä, veto ja voitto/tappio. Tallaisesta listasta sitten kasataan lista, jossa on jokaisen päivän saldo päivämääränsä perässä. Eli tuosta vetoja sisältävältä listalta noukitaan tietyn päivämäärän voitot johonkin soluun summaksi. Selvitäänkö if-funktioilla. Itsellä ei ainakaan ole vielä leikannut, tosin en kovinkaan kova velho tuon excelin kanssa ole..


Jos ymmärsin oikein, niin SUMIF-funktiolla pitäisi onnistua. Excelin helpistä löytyy apua ton käyttöön.
0
Ylös
  Profiili
 
 Viestin otsikko:
ViestiLähetetty: 07.04.2004, 10:01 
Status: JäsenLiittynyt: 14.01.2003, 09:40Viestit: 1491
Pisteitä: 33
Automaattiseksi jos tän haluaisi, tarvittaisi jonkin verran VBA-koodia.

Riveille saa päiväsummat tämmöisellä kaavalla:

=JOS(A1<>"";JOS(A1<>A2;SUMMA.JOS(A:A;A1;B:B);"");"")
tai englantiversiossa
=IF(A1<>"";IF(A1<>A2;SUMIF(A:A;A1;B:B);"");"")

Eli A-sarakkeessa on päivät ja B-sarakkeissa summat, korvaa ne omilla sarakkeillasi.

Mutta tuo ei tainnut olla se mitä hait. Nyt siihen.

Ilman Makroja-tekniikka:
1. Ensin pitää kerätä erilaiset päivämäärät.
- Tiedot - Suodata - Erikoissuodatus...
- Alueeksi pitää valita päivämäärä-sarake
- Tiedot pitää ehdottomasti kopsata eri kohtaan eli johonkin tyhjän sarakkeen ekalle riville
- Vain ainutkertaiset tietueet-chekbox päälle
2. Nyt pitäisi olla erilaiset päivämäärät kasassa
- ekan päivämäärän viereiseen sarakkeeseen kaava:
- =SUMMA.JOS(A:A;L1;B:B) tai =SUMIF(A:A;L1;B:B)
- eli jälleen oletan että A-sarakkeessa on pvm:t ja B:ssä summat ja L1 on toi eka suodatettu pvm
3. Jos ja kun joku meni vituiks, kerro niin jelpataan lisää

Makrollinen-tekniikka:
1. Työkalut - Makro - Nauhoita uusi makro
- ihan sama minkä niminen paina vaan OK:ta
- paina stoppia eli älä tee mitään
- paina alt ja f11 nappuloita
- korvaa sisältö tällä (eli allaoleva roska Subin ja End subin väliin)

Koodi:
Dim rivi, rivi2 As Integer
Dim pvm As Date
Dim summa As Single

' rivi-muuttuja alustetaan ensimmäisen vetorivin numerolla
rivi = 1
' rivi2-muuttujassa on jemmassa rivinumero johon kerätään päivämäärät ja summat
rivi2 = 1
' käydään läpi niin pitkään kunnes tulee tyhjä rivi
Do While Cells(rivi, 1) <> ""
    If Cells(rivi, 1) <> pvm Then
        If rivi <> 1 Then
            ' yhteenlaskettu summa ja pvm lätkätään sarakkeisiin 5 ja 6 eli E ja F
            ' eli jos haluat kauemmaksi niin ei kun isommat numerot noiden paikalle
            Cells(rivi2, 5) = pvm
            Cells(rivi2, 6) = summa
            ' kasvatetaan rivi2-muuttujaa eli osaa heittää seuraavalle riville seur. summat
            rivi2 = rivi2 + 1
        End If
        pvm = Cells(rivi, 1)
        summa = Cells(rivi, 2)
    Else
        summa = summa + Cells(rivi, 2)
    End If
    rivi = rivi + 1
Loop
' vielä viimeinen pvm ja summa kohdilleen
Cells(rivi2, 5) = pvm
Cells(rivi2, 6) = summa

- sulje Visual Basic-editori vaikka ruksista ja homma on valmis

Nyt voit sitten ajaa makron Työkalut - Makro - Makrot... valikosta. En ihmeemmin testaillut noita, mutta uskon että toimii.

Jos sulla on englanninkielinen excel, valikoiden nimet vaan muuttuu, muut ei.

EDITTI: Koodissa pitää olla kommentit samalla rivillä eli '-alkuiset rivit pitää olla samalla rivillä tai sitten jos ei mahdu niin laita toisellekin riville ' alkuun

Tajuaakohan tästä selvityksestä kukaan yhtikäs mitään... :roll:
0
Ylös
  Profiili
 
 Viestin otsikko:
ViestiLähetetty: 07.04.2004, 13:43 
Status: JäsenLiittynyt: 08.12.2003, 05:16Viestit: 18Paikkakunta: Espoo
Pisteitä: 0
Kiitokset vastaukisista. Tuo SUMIF-funktio hoiti homman varsin kätevästi ja vaivattomasti.

Seve
0
Ylös
  Profiili
 
Näytä viestit ajalta:  Järjestä  
Aloita uusi ketju Vastaa viestiin  [ 6 viestiä ] 

Kaikki ajat ovat UTC + 2 tuntia


Paikallaolijat

Käyttäjiä lukemassa tätä aluetta: Ei rekisteröityneitä käyttäjiä ja 3 vierailijaa


Et voi kirjoittaa uusia viestejä
Et voi vastata viestiketjuihin
Et voi muokata omia viestejäsi
Et voi poistaa omia viestejäsi
Et voi lähettää liitetiedostoja.

Hyppää:  


Powered by phpBB © 2008 phpBB Group | Käännös, Lurttinen, www.phpbbsuomi.com
subSilver+ theme by Canver Software, sponsor Sanal Modifiye