kunde
Isaan Rules WFF CCC
If you walked away smiling-then for you the price was right
Keep Exceling
Suosikkibändit/artistit: Queen, Rammstein, genesis, Bruce Bringsteen, Kino, Mandref Mann Earth band Who
Lempikirjat: ohjelmointi...
Suosikkipalstat Suomi24 Keskusteluissa: EXCEL, Kivitalot, EPS
En pidä: pakkanen ja loskakelit
Ruoka & juoma: loimulohi ja valkkari
Linkit: http://www.kundepuu.com, Khorat
Koulutus: ---
Ammatti: Tiede/teknologia
Työskentelen: freelancer
Ase tai siviilipalvelus: yliluutnantti
Siviilisääty: Varattu
Lapset: ---
Hakusanat: Thaimaa, korat, Excel, VBA, ACAD, CNC, Polyurea, EPS, MgO elementti
Liittynyt sitten
Muokkaa profiilia7 aloitusta · 1377 kommenttia
- 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 - 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 - K21:M21 alue ja P21 tänään, huomenna O21 ylihuomenna M21 jne...
Mission Impossible, koska kirjoittaa alueesi päälle.
ei ymmärrä tarvettasi...
jääkö se X siihen ja mikä olisi koodisi idea? ;-) - muuta kaavasi =MATCH("x";C7:K7)
- EI,
mutta kikkailemalla...
lisää tekstiruutu taulukkoon
taulukon moduuliin...
muuttele tekstiruudun ominaisuudet ominaisuuslomakkeella sopiviksi samoinkuin offsetsolun paikka, summasolun osoite, tekstit yms...
Private Sub Worksheet_SelectionChange(ByVal Target As Excel.Range)
With ActiveWindow.VisibleRange
TextBox1.Top = .Cells(10, 10).Top
TextBox1.Left = .Cells(10, 10).Left
TextBox1.Width = .Cells(10, 10).Width
TextBox1. Height = .Cells(10, 10).Height
TextBox1 = Range("C123")
End With
End Sub
Keep EXCELing
@Kunde - onnistuu ihan helposti VBA:lla.
Teet tekstitiedoston, missä kaikki tiedot on ja sieltä sitten haut( voi hakea useampiakin esiintymiä samalla ehdolla...)
eli piece of the cake
jos ei onnaa niin laita sitten mallitiedosto,hakuehdot,mihin tulos haetaan ja miten yms tietoa
www.kundepuu.com (vaatii rekisteröitymisen)
niin guruilta saat vastauksen pikaisesti ...
Keep EXCELing
@Kunde - ei kaavat noin toimi vaan...
=TÄMÄ.PÄIVÄ()
antaa tulokseksi kuluvan päivän järjestysnumeron alkaen 1.11900 eli esim. tänään 6.3.2010 antaa tulokseksi 40974
omassa kaavassani VALITSE.INDEKSI(VIIKONPÄIVÄ(TÄMÄ.PÄIVÄ();2);6;5;4;3;2;1;0)
VIIKONPÄIVÄ(TÄMÄ.PÄIVÄ();2) palauttaa tämän päivän järjestysluvun jälkimmäisen argumentin perusteella
jos arvo =1 niin 1= sunnuntai... lauantai=7
jos arvo =2 niin 1= maanantai... sunnuntai=7
jos arvo =3 niin 0= maanantai... sunnuntai=6
eli palautta arvon 2
VALITSE:INDEKSI sitten palauttaa ko.päivanumeron(=2) mukaisen arvon matriisista
eli palauttaa arvon 5
arvo 5 lisätään sitten lukuun 40974 5=40979=11.3.2012
tämän arvon kaava palauttaa ja solumuotoilulla sitten siitä saa mieleisensä...
sumnma27 kaava
=TÄMÄ.PÄIVÄ() 7-VIIKONPÄIVÄ(TÄMÄ.PÄIVÄ();2)
TÄMÄ.PÄIVÄ()=40974
VIIKONPÄIVÄ(TÄMÄ.PÄIVÄ();2)=2
eli 40974 7-2=40979=11.3.2012
Keep EXCELing
@Kunde - =TÄMÄ.PÄIVÄ() VALITSE.INDEKSI(VIIKONPÄIVÄ(A1;2);6;5;4;3;2;1;0)
Keep EXCELing
@Kunde - http://www.kundepuu.com/viewtopic.php?f=155&t=493
Keep EXCELing
@Kunde - http://www.kundepuu.com/viewtopic.php?f=155&t=492
Keep EXCELing
@Kunde - ilman turhia kikkailua...
rastien tuloksett B:D sarakkeissa
soluun kaava =JOS(LASKE.JOS(B2:D2;" - tee tietoalueesta dynaaminen
lisää nimi esim. Kuukausi ja viittaus siihen
=OFFSET($A$1;0;0;COUNTA($A$1:$A$31);1)
=SIIRTYMÄ($A$1;0;0;LASKE.A($A$1:$A$31);1)
ja kaaviossa käytät sitten tietoalueena =Kuukausi
KEEP EXCELing
@Kunde - http://www.kundepuu.com/viewtopic.php?f=155&t=488
Keep EXCELing
@Kunde - kokeile seuraavaa
VBA editorin puolella klikkaa CTRL BREAK tai SHIFT CTRL BREAK
jos ei auta lisää sitten koodin alkuun
Application.EnableCancelKey = xlDisabled
tallenna ja buuttaa masiina
tämä toki poistaa mahdollisuuden keskeyttää makron suoritus manuaalisesti
Keep EXCELing
@Kunde - moduuliin...
Sub Muokkaa()
Dim työkirja As Worksheet
For Each työkirja In Worksheets
työkirja.Cells.RowHeight = 25
työkirja.Columns("A:C").ColumnWidth = 30
Next
End Sub
Keep EXCELing
@Kunde - Lisäkyssäri2
Missäs noi 26 kaaviota on työkirjassa?
Samassa taulukossa vaiko eri taulukossa vaiko kaaviosivuilla?
onko ne kuvia ???
miten nimetty ja onko aina samannimisessä taulukossa?
helpointa lienee kun laitat kyssärin mallitiedostoineen http://www.kundepuu.com (vaatii rekisteröitymisen- lukea voi ilman rekisteröitymistä) - http://www.kundepuu.com/viewtopic.php?f=155&t=484
Keep EXCELing
@Kunde - http://www.kundepuu.com/viewtopic.php?f=155&t=481&p=576#p576
Keep EXCELing
@Kunde - Sub Malli()
MsgBox "Kuutiontilavuus: " & tilavuus(2.5, 3.3, 4.1) & " m3"
End Sub
Function tilavuus(Leveys As Double, Pituus As Double, Korkeus As Double) As Double
tilavuus = Leveys * Pituus * Korkeus
End Function
kutsuttavssa funktiossa määrittelet argumentit oikeilla muuttujatyypeillä samoinkuin funktion palauttana arvo
Keep EXCELing
@Kunde - ei toimi tuttumiehen kaava oikealla tavalla ja siinä on myös virhe etsittävän merkin kohdalla
tuolla asiasta lisää...
http://keskustelu.suomi24.fi/node/8155831#comment-37961868