Tänään on 20.06.2018, 00:50.

Excel kysymyksiä

Yleiseen turisemiseen muustakin kuin pelaamisesta.
Jäähile
Jäsen
Viestit: 516
Liittynyt: 15.05.2003, 15:13
Pisteitä: 0
Paikkakunta: Oulu

Excel kysymyksiä

Viesti Kirjoittaja Jäähile »

1.Päivämäärän hakeminen

Kuinka haetaan päivämäärä automaattisesti vaikkapa soluun A1 ,niin että haettu päivämäärä ei muutu vuorokauden vaihtuessa. =Today() ei ilmeisesti käy?

2.Solujen vertaaminen silmukassa

Silmukalla olisi tarkoitus käydä läpi esim. solujen A1:A10 sisältö ja vastaavasti B1:B10.Jos soluista löytyisi sama teksi esim."nhl" ,niin suoritettaisiin laskutoimitus C*D niiltä riveiltä ,joilta haettu teksti löytyi.

3.Luvun hakeminen silmukalla

Silmukan olisi tarkoitus käydä läpi esim.solujen A1:A1000 sisältö ja tulostaa kommentti aina ,jos solun sisältö ois >1,0

Toivottavasti ei ollut vanhoja :oops:?

Pisteitä

Pisteitä yhteensä: 0. Antamasi peukut: 0.

Minikommentit


jl
Jäsen
Viestit: 52
Liittynyt: 14.02.2004, 17:30
Pisteitä: 0

Viesti Kirjoittaja jl »

Tarkennapa kysymyksiä hieman niin vastaaminen helpottuu.

Haluatko toteuttaa toiminnallisuutesi Excel - kaavoilla vai VBA - makroilla?

Päivittääkö toiminnallisuus jonkun staattisen taulukon rivikohtaisia arvoja vai annetaanko käyttäjälle kertaluonteista analyysitietoa datasta?

Laitetaan nyt jotain vastauksia, vaikka osittain joudun arvaamaan mitä oikeastaan kysyt.

1. VBA: cells(1,1).value = now()

2. Excel - kaava solussa E1: =IF(AND(A1="nhl";B1="nhl");C1*D1;0) -> kopioi soluihin E2:E10

3. Excel - kaava solussa B1: =IF(A1>1;"kommentti";"") -> kopioi soluihin B2:B1000

Pisteitä

Pisteitä yhteensä: 0. Antamasi peukut: 0.

Viimeksi muokannut jl, 19.05.2005, 15:14. Yhteensä muokattu 1 kertaa.

Minikommentit


Jäähile
Jäsen
Viestit: 516
Liittynyt: 15.05.2003, 15:13
Pisteitä: 0
Paikkakunta: Oulu

Viesti Kirjoittaja Jäähile »

Kiitokset avusta! Vielä muutama kysymys:

Kaikki pitäisi toteuttaa makrolla

1.Soluissa A1:A100 on kertoimia.Tarkoituksena tehdä makro joka etsi 20 pienintä kerrointa ja kopioi koko rivin ,josta kerroin löytyi seuraavalle sivulle.

2.Soluissa A1:A100 on sarjojen nimiä.Jos sana alkaa "eng" ,niin lasketaan vastaavissa soluista B1:B100 löytyvien lukujen keskiarvo.

3.Soluissa M2:M100 on ruksi (X) ,jos tietty tapahtuma on toteutunut.Miten voidaan tehdä tulostus "oikein" vastaavalle riville sarakkeseen O ,josta ruksi on löytynyt.

For rivi 1 to 100
rivi = rivi+1

Tapahtuma = "M" & CStr(rivi)
If Len(Range(Tapahtuma).Value)=1 Then
'TÄHÄN SITTEN SE TULOSTUS KOMENTO
End if

Pisteitä

Pisteitä yhteensä: 0. Antamasi peukut: 0.

Minikommentit


Berrie
Jäsen
Viestit: 1491
Liittynyt: 14.01.2003, 10:40
Pisteitä: 33

Viesti Kirjoittaja Berrie »

Jäähile kirjoitti:1.Soluissa A1:A100 on kertoimia.Tarkoituksena tehdä makro joka etsi 20 pienintä kerrointa ja kopioi koko rivin ,josta kerroin löytyi seuraavalle sivulle.
Aika paha, melkeinpä pitäisi olla riveillä yksilöivä tunnus, toisinsanoen miten toimitaan jos sama kerroin löytyy usemmalta riviltä? Mikä/mitkä rivi(t) niistä kopsataan jos samat kertoimet sattuu sijoille 19-22?
Jäähile kirjoitti:2.Soluissa A1:A100 on sarjojen nimiä.Jos sana alkaa "eng" ,niin lasketaan vastaavissa soluista B1:B100 löytyvien lukujen keskiarvo.
Vaikka kaikki piti tehdä makroilla niin silti esitän tuommoisen...
=SUMMA.JOS(A1:A100;D1;B1:B100)/LASKE.JOS(A1:A100;D1)
eng
=SUMIF(A1:A100;D1;B1:B100)/COUNTIF(A1:A100;D1)
Jäähile kirjoitti:3.Soluissa M2:M100 on ruksi (X) ,jos tietty tapahtuma on toteutunut.Miten voidaan tehdä tulostus "oikein" vastaavalle riville sarakkeseen O ,josta ruksi on löytynyt.

For rivi 1 to 100
rivi = rivi+1

Tapahtuma = "M" & CStr(rivi)
If Len(Range(Tapahtuma).Value)=1 Then
'TÄHÄN SITTEN SE TULOSTUS KOMENTO
End if
Vaikkapa
Sheets(1).Cells(rivi,15).Value = "oikein"

Kannattaa opetella viittaamaan Sheetteihin ja soluihin noilla Sheets ja Cells systeemeillä eli esim.

Koodi: Valitse kaikki

For rivi = 2 to 100
	If Sheets(1).Cells(rivi, 13).Value = "X" Then
		Sheets(1).Cells(rivi, 15).Value = "oikein"
	End if
	rivi = rivi+1
Next

Pisteitä

Pisteitä yhteensä: 0. Antamasi peukut: 0.

Minikommentit


jl
Jäsen
Viestit: 52
Liittynyt: 14.02.2004, 17:30
Pisteitä: 0

Viesti Kirjoittaja jl »

Jäähile kirjoitti:Kiitokset avusta! Vielä muutama kysymys:

Kaikki pitäisi toteuttaa makrolla

1.Soluissa A1:A100 on kertoimia.Tarkoituksena tehdä makro joka etsi 20 pienintä kerrointa ja kopioi koko rivin ,josta kerroin löytyi seuraavalle sivulle.

Tässä vähän vinkkiä millä pääset alkuun.

Tämä tekee suunnilleen 1 - kohdan asiat ja saat varmaan siitä runkoa 2:een ja 3:een:

Koodi: Valitse kaikki

Option Explicit
Public Const SIIRRETTAVIA As Integer = 20
Public Const RIVEJA As Integer = 100
Public Const SARAKKEITA As Integer = 8

Sub siirra()

    Dim i As Integer
    Dim j As Integer
    Dim k As Integer
    Dim pienin As Double
    Dim rivi As Integer
    Dim siirretty() As Boolean
    
    ReDim siirretty(RIVEJA)
    
    For j = 1 To SIIRRETTAVIA
    pienin = 999999
        For i = 1 To RIVEJA
            If Len(Sheets("sheet1").Cells(i, 1).Value) > 0 And IsNumeric(Sheets("sheet1").Cells(i, 1).Value) _
            And siirretty(i) = False Then
                If Sheets("sheet1").Cells(i, 1).Value < pienin Then
                    pienin = Sheets("sheet1").Cells(i, 1).Value
                    rivi = i
                End If
            End If
        Next i
        siirretty(rivi) = True
        For k = 1 To SARAKKEITA
            Sheets("Sheet2").Cells(j, k).Value = Sheets("Sheet1").Cells(rivi, k).Value
        Next k
        
    Next j
    
End Sub

Pisteitä

Pisteitä yhteensä: 0. Antamasi peukut: 0.

Minikommentit


nieba
Jäsen
Viestit: 18
Liittynyt: 26.01.2004, 17:08
Pisteitä: 0

Viesti Kirjoittaja nieba »

Millainen kaava tulee exceliin, jos haluan tietää montako kertaa esim. alueella B1:B1000 esiintyy joku tietty sana?
Kiitos jo etukäteen

Pisteitä

Pisteitä yhteensä: 0. Antamasi peukut: 0.

Minikommentit


gary
Jäsen
Viestit: 521
Liittynyt: 14.01.2003, 10:36
Pisteitä: 0

Viesti Kirjoittaja gary »

Vaikka olenkin tumpelo ecxellin käytössä, mutta kokeile tätä

LASKE.JOS(B1:B1000;" Tietty sana")

Pisteitä

Pisteitä yhteensä: 0. Antamasi peukut: 0.

Minikommentit


Jäähile
Jäsen
Viestit: 516
Liittynyt: 15.05.2003, 15:13
Pisteitä: 0
Paikkakunta: Oulu

Viesti Kirjoittaja Jäähile »

Mites saisin automaattisen kaavan täytön toimimaan.Makro kyllä kopioi kaavan soluihin ,mutta "ei suorita laskua".Jokaiseen soluun pitää siis mennä erikseen ja painaa enter ,jotta lasku suoritetaan :).Ratkaisu on varmasti yksinkertainen :oops:

Pisteitä

Pisteitä yhteensä: 0. Antamasi peukut: 0.

Minikommentit


Berrie
Jäsen
Viestit: 1491
Liittynyt: 14.01.2003, 10:40
Pisteitä: 33

Viesti Kirjoittaja Berrie »

Application.Calculate
tai pelkkä Calculate

Oliko riittävän yksinkertainen? :wink:

Pisteitä

Pisteitä yhteensä: 0. Antamasi peukut: 0.

Minikommentit


Jäähile
Jäsen
Viestit: 516
Liittynyt: 15.05.2003, 15:13
Pisteitä: 0
Paikkakunta: Oulu

Viesti Kirjoittaja Jäähile »

Pistetäänpä taas lisää ,kun täällä tuntuu olevan tietävää porukkaa.

VLOOKUP(A1,B1:C1000,2,False)

Onnistuuko semmonen ,että A1 vaihtuisi kun rivejä mennään alas päin.A1,A2,A3 jne ,mutta tuo B1:C1000 alue pysyisi samana.Eli ongelma tulee ,kun kopioi kaavan soluun ja käytän filldownia ,jolloin myös B1:C1000 alue muuttuu.Pitäskö toteuttaa makrolla vai onnistuuko muuten?

Jotain tämmöstä olen ajatellut:

raja1 = 1
raja2 = 1000
Range("D1").Select
ActiveCell.Formula = "=VLOOKUP( A1,B(raja1):C(raja2),2,False)"
Range("D1:D1000").Select
Selection.Filldown

Eli ongelmana on lähinnä tuo lihavoitu kaavan osuus.Kuinka tuo pitäisi kirjoittaa?Iso kiitos jo auttaneille!

EDIT: Ei taida tuo filldown olla oikea tapa.Pitäskö tehdä for-silmukka tai jotain.

Pisteitä

Pisteitä yhteensä: 0. Antamasi peukut: 0.

Minikommentit


Rene....
Jäsen
Viestit: 60
Liittynyt: 25.03.2003, 12:26
Pisteitä: 0
Paikkakunta: Turku

Viesti Kirjoittaja Rene.... »

VLOOKUP(A1,$B$1:$C$1000,2,False)

Ylläoleva pitää alueen B1:C1000 vakiona kaavoja kopioitaessa.
Onnistuu valitsemalla kaavasta vakiona pidettävä alue ja painamalla kerran F4:sta.


Rene....

Pisteitä

Pisteitä yhteensä: 0. Antamasi peukut: 0.

Minikommentit


temer
Jäsen
Viestit: 4
Liittynyt: 11.03.2004, 16:54
Pisteitä: 0

Viesti Kirjoittaja temer »

Mitenkäs tuon automaattisen virheenkorjauksen saa pois päältä? Valitsin asetuksista mielestäni kaikki pois, mutta silti ohjelma muuttaa numeroita päivämääriksi, esim 1-30 tuleekin 1.1.1930 :evil: En huomannut ohjelman muuttavan sanoja.

Toinen kysymys: Miten saan "varattua" johonkin kohtaa taulukkoa sopivan määrän sarakkeita? Näin.

Lopuksi voisitte vielä suositella hyviä Excel-aiheisia sivustoja tai kirjallisuutta.

Pisteitä

Pisteitä yhteensä: 0. Antamasi peukut: 0.

Minikommentit


comax
Jäsen
Viestit: 31
Liittynyt: 02.07.2003, 13:05
Pisteitä: 0
Paikkakunta: Rovaniemi

Viesti Kirjoittaja comax »

temer kirjoitti:Mitenkäs tuon automaattisen virheenkorjauksen saa pois päältä? Valitsin asetuksista mielestäni kaikki pois, mutta silti ohjelma muuttaa numeroita päivämääriksi, esim 1-30 tuleekin 1.1.1930 :evil: En huomannut ohjelman muuttavan sanoja.
Muuta kentät muodosta "Yleinen" -> "Luku" tms.

Pisteitä

Pisteitä yhteensä: 0. Antamasi peukut: 0.

Minikommentit


mutanen_aapo
Jäsen
Viestit: 3559
Liittynyt: 14.01.2004, 16:48

Tuotto: +115.89 yks.

Palautus%: 101.01%

Panosten ka: 6.84 yks.

Vetoja: 1671

Pisteitä: 4448
Paikkakunta: Fin/Ita

Viesti Kirjoittaja mutanen_aapo »

Mulla on sellainen seurantapohja, jossa joka kohteeseen merkitään panos, mahd. voitto ja bookkeri(tietysti paljon muutakin). Nyt olen laittanut bookkeriksi esim. Betfair, panokseksi 50e ja voitoksi 100e. Nyt tarkoitukseni olisi pitää Betfairilla olevasta rahamäärästä kirjaa siten, että ohjelma hakisi kaikki kohteet(solut) joissa lukee Betfair. Sitten se osaisi miinustaa panokset ja plussata voitot ja sitten se lisäisi sen alkukassaan. Miten tuollaisen saa väsättyä?

Pisteitä

Pisteitä yhteensä: 0. Antamasi peukut: 0.

Minikommentit


jubago
Jäsen
Viestit: 238
Liittynyt: 09.03.2004, 18:06
Pisteitä: 0

Viesti Kirjoittaja jubago »

Mulla on sellainen seurantapohja, jossa joka kohteeseen merkitään panos, mahd. voitto ja bookkeri(tietysti paljon muutakin). Nyt olen laittanut bookkeriksi esim. Betfair, panokseksi 50e ja voitoksi 100e. Nyt tarkoitukseni olisi pitää Betfairilla olevasta rahamäärästä kirjaa siten, että ohjelma hakisi kaikki kohteet(solut) joissa lukee Betfair. Sitten se osaisi miinustaa panokset ja plussata voitot ja sitten se lisäisi sen alkukassaan. Miten tuollaisen saa väsättyä?
Esim. seuraavasti (yhdelle riville):

=IF(F2="Betfair";W1-O2+M2;W1)

F2=Firma
W1=Betfairin kassa
O2=Panos
M2=Voitto

Pisteitä

Pisteitä yhteensä: 0. Antamasi peukut: 0.

Minikommentit


Oliver
Avatar
Jäsen
Viestit: 1316
Liittynyt: 14.01.2003, 13:22
Pisteitä: 206
Viesti:

Viesti Kirjoittaja Oliver »

mutanen_aapo kirjoitti:Mulla on sellainen seurantapohja, jossa joka kohteeseen merkitään panos, mahd. voitto ja bookkeri(tietysti paljon muutakin). Nyt olen laittanut bookkeriksi esim. Betfair, panokseksi 50e ja voitoksi 100e. Nyt tarkoitukseni olisi pitää Betfairilla olevasta rahamäärästä kirjaa siten, että ohjelma hakisi kaikki kohteet(solut) joissa lukee Betfair. Sitten se osaisi miinustaa panokset ja plussata voitot ja sitten se lisäisi sen alkukassaan. Miten tuollaisen saa väsättyä?
=Alkukassa+SUMMA.JOS(bookkerisarake;"Betfair";palautussarake)-SUMMA.JOS(bookkerisarake;"Betfair";panossarake).

Tai

=Alkukassa+SUMMA(JOS(bookkerisarake="Betfair";palautussarake-panossarake;0)) (kuittaus Ctrl + Shift + Enter).

Jälkimmäinen on vektorilaskutoimitus, eli sarakealueet pitää olla yhtäsuuret.

Pisteitä

Pisteitä yhteensä: 0. Antamasi peukut: 0.

Minikommentit


mutanen_aapo
Jäsen
Viestit: 3559
Liittynyt: 14.01.2004, 16:48

Tuotto: +115.89 yks.

Palautus%: 101.01%

Panosten ka: 6.84 yks.

Vetoja: 1671

Pisteitä: 4448
Paikkakunta: Fin/Ita

Viesti Kirjoittaja mutanen_aapo »

Osaisko joku Exceliin perehtynyt kertoa, miten saisin haettua netistä lukuja suoraan tiettyihin soluihin? Oikeat luvut(esim. voitot, tappiot) määritettyihin soluihin. Tällä hetkellä toimii vielä käsisyöttönä.

Pisteitä

Pisteitä yhteensä: 0. Antamasi peukut: 0.

Minikommentit


Neo
Avatar
Jäsen
Viestit: 3598
Liittynyt: 19.01.2003, 19:32

Tuotto: +0.00 yks.

Palautus%: -

Panosten ka: -

Vetoja: 0

Pisteitä: 3181
Paikkakunta: Norge
Viesti:

Viesti Kirjoittaja Neo »

Data -> Import External Data -> New Web Query

Pisteitä

Pisteitä yhteensä: 0. Antamasi peukut: 0.

Minikommentit


Mikezu
Jäsen
Viestit: 253
Liittynyt: 05.02.2004, 18:01
Pisteitä: 22

Viesti Kirjoittaja Mikezu »

Lienee tähänkin ongelmaan helppo ratkaisu, mutta itsellä ei lanttu leikkaa sitten millään:

Millä kaavalla saan laskettua, kuinka monella rivillä taulukossa sarakkeen A arvoa "a" vastaa sarakkeessa B arvo "5"?

Koodi: Valitse kaikki

|A|B|
-----
|a|1|
|b|2|
|d|3|
|c|4|
|a|4|
|a|5|
|d|6|
|c|4|
|a|5|
Vastaukseksi pitäisi tulla siis 2. LASKE.JOS -funktio ei taida tähän taipua?

Pisteitä

Pisteitä yhteensä: 0. Antamasi peukut: 0.

Minikommentit


Oliver
Avatar
Jäsen
Viestit: 1316
Liittynyt: 14.01.2003, 13:22
Pisteitä: 206
Viesti:

Viesti Kirjoittaja Oliver »

{=SUMMA(JOS(A1:A100="a";JOS(B1:B100=5;1;0);0))}

Kaavan kuittaus ctrl+shift+enter.

Kaikki ketkä meinaa Excelillä systeeminsä rakentaa, niin äkkiä joulupukin toivomuslistaan MS Excel 2003 Bible tai vastaava kirja! Muuten tulee jätettyä liian helposti tekemättä jotain, minkä tekisi jos vain osaisi.

Pisteitä

Pisteitä yhteensä: 0. Antamasi peukut: 0.

Minikommentit


Mikezu
Jäsen
Viestit: 253
Liittynyt: 05.02.2004, 18:01
Pisteitä: 22

Viesti Kirjoittaja Mikezu »

Kiitokset Oliverille! Yksi Excel-kirja jo löytyy, mutta tähän mennessä on tullut skipattua kaikki matriisikaavoihin liittyvät sivut :?

Mutta taas tuli todistettua, että tältä taululta saa nopeammin vastauksen excel-ongelmiin kuin esim. googlettamalla. :)

Pisteitä

Pisteitä yhteensä: 0. Antamasi peukut: 0.

Minikommentit


gary
Jäsen
Viestit: 521
Liittynyt: 14.01.2003, 10:36
Pisteitä: 0

Viesti Kirjoittaja gary »

Kiitokset Oliverille myös minulta. Tuollaista kaavaa olen etsinyt pitkään, jolla voi soveltaen tarkentaa esim. seurantaa eri kerroinvälillä jne.

Pisteitä

Pisteitä yhteensä: 0. Antamasi peukut: 0.

Minikommentit


playerone
Jäsen
Viestit: 1052
Liittynyt: 10.09.2004, 10:44
Pisteitä: 3
Paikkakunta: Tampere

Viesti Kirjoittaja playerone »

Excel ei meikäläiseltä taivu, kunhan käytän valmiita taulukko-ohjelmia, joten pistetään nyt tähän ketjuun yksi tyhmäkin kysymys tasapainottamaan kokonaisuutta :oops:
Mun seurantataulukkoon ilmesty yhtäkkiä "VIITTAUS!" tekstejä "pelattu-voitettu-vaihto-tulos" kohtaan. En näe missään minkään olevan erilailla kuin ennen? Kyseinen taulukko on kopsattu tältä palstalta.

Ei siinä mitään, mutta kun hakkasin tunnin vanhoja pelejä taulukkoon, joita olin vain paperille kirjoitellut ja si yhtäkkiä huomaan noi viittaukset. Ei viitsinyt enää poistaa kaikkea kirjoittamaansa, millä ne viittaukset olis tietysti myöskin lähtenyt. Millähän ne sais pois, kun olis kuitenkin aika oleellista nähdä tuo kohta "tulos", olkoonkin että tällä hetkellä teksti "viittaus!" näyttää kyllä paremmalle kuin se tulos näyttäisi.

Pisteitä

Pisteitä yhteensä: 0. Antamasi peukut: 0.

Minikommentit


Oliver
Avatar
Jäsen
Viestit: 1316
Liittynyt: 14.01.2003, 13:22
Pisteitä: 206
Viesti:

Viesti Kirjoittaja Oliver »

playerone kirjoitti:Mun seurantataulukkoon ilmesty yhtäkkiä "VIITTAUS!" tekstejä "pelattu-voitettu-vaihto-tulos" kohtaan.
Jos esim. alemmalla rivillä oleva kaava tarvitsee ylemmän rivin arvoa ja ylempi rivi poistetaan, niin silloin tulee tuo viittausvirhe. Tässä tapauksessa virhe luultavasti poistuu kopioimalla kaavat ylhäältä alas uudestaan (tai jos sarakkeen alkupään kaavat eivät ole identtisiä niin vaikka kolmannelta riviltä lähtien).

Pisteitä

Pisteitä yhteensä: 0. Antamasi peukut: 0.

Minikommentit


jarihfi
Jäsen
Viestit: 222
Liittynyt: 14.07.2004, 23:20
Pisteitä: 3

Viesti Kirjoittaja jarihfi »

Taas yksi tyhmä Excel kysymys, kun kerran täällä tuota tietoa tuntuu riittävän !

Elikkä tilanne esim. seuraava =>
A B
3.150 26.00
3.150 -11.11
3.135 17.23
3.100 -4.80
3.049 -14.15
3.045 16.66
3.045 -13.63
3.045 15.00
3.024 -13.95
3.024 13.33
3.022 18.46
3.022 10.00

Ja nyt pitäisi määrittää B:n arvo (arvio) vaikka seuraaville tilanteille A=3.08, A=3.03 ja A=3.20.
Olen koittanut tehdä tuota forecast-funktiolla, mutta sehän ei tuossa tilanteessa taida taipua oikein ?

Pisteitä

Pisteitä yhteensä: 0. Antamasi peukut: 0.

Minikommentit


Vastaa Viestiin

Palaa sivulle “Yleinen turina”