Posts in VBA

Latest Comments

Excel minityökalurivi

Minityökalurivin poisto Excelissä Työkalurivi joka tulee näkyviin kuin hiiren kakkospainiketta painaa saadaan pois seuraavalla koodilla:   Sub ShowMiniTB() Application.ShowMenuFloaties = True End Sub   Muuttamalla[…]

Kansiossa olevien tiedostojen luku VBA:ssa

VBA:ssa voit lukea kansion Dir käskyllä löytääksesi haluamasi tiedoston tai vaikka kansion kaikki tiedostot. Käytä lukemisessa Do While – Loop solmukkaa. Kun olet käsitellyt tiedoston[…]

Tuolstetaan kaikki .docx -asiakirjat ao kansiossa

Sub prtDocs() ‘Tulostetaan kaikki Word asiakirjat nykyisessä kansiossa Dim adoc As String adoc = Dir(ActiveDocument.Path & “\*.DOCX”) Do While adoc “” Application.PrintOut FileName:=adoc adoc =[…]

Vauhtia makroon

Nopeampaa makro suoritusta Excelissä. Muutamalla perusasetuksella saa koodin toimimaan nopeammin.Tietenkin tekemällä hyvää ja lyhyttä koodia ja välttelemällä turhia soluvalintoja selectillä mutta on myös pari peruslaatua[…]

Muutama VBA-editorin asetus

Meille huononäköisille saadaan VBA-editorin fontti isommaksi kohdasta:VBA – Editorin valikko: Tools – Options, Editor Format ja Size kohta. Itse olen myös ottanut ponnahdusikkuna-ilmoituksen pois virheistä[…]

Negatiiviset luvut nolliksi

Silloin tällöin on ollut tarvetta muuntaa kaikki negatiiviset arvot nolliksi (0). Se voidaan tehdä esimerkiksi seuraavalla makrolla jos ensin valitaan asianomainen alue ja sitten suoritetaan[…]

Poista PowerPoint 2013 linkit

PowerPointissa 2013 et pysty valitsemaan useita linkkejä samanaikaisesti ja poistaa niitä. Siihen tarvitaan pieni VBA-koodi avuksi joka löytyy mm tältä sivustolta: http://www.pptfaq.com/FAQ01172-Break-all-of-the-links-in-a-presentation.htm Mikäli sivu ei[…]

Ensimmäinen numero merkkijonossa

Oheisella funktiolla etsitään merkkijonon ensimmäinen numeropositio. Esimerkiksi merkkijonoista abc123 tai a234, tai xyyz23 halutaan pomia teksti ja numerot erikseen. Merkkijono on vaihtelevan pituinen. Kun ensimmäisen numeron[…]

Kahden solun yhdistäminen

Yhdistetään A ja B sarakkeen solut ja laitetaan välilyönti väliin Esim.: Solussa A1 = Aku ja B1 = Ankka -> C1 = Aku Ankka Funktioilla:[…]

Taulujen lajittelu työkirjassa

Silloin tällöin tulee tarve saada lajiteltua taulut aakkosjärjestykseen. Sen voi tehdä seuraavalla makrolla: Option Compare Text '( tarkoittaa että A = a) Sub AakkostaTaulut() Dim[…]

Makron nauhoitus

Muutama perusasia ennen kuin nauhoitat makron Pystytkö hoitamaan toiminnon funktioilla? (Toimii todennäköisesti varmemmin.) Harjoittele ensin kaikki vaiheet. (Nauhoitus nauhoittaa kaikki liikkeet, myös mokat). Pohdi, minkä[…]

Etunollien lisääminen makrojen avulla

Hävinneet etunollat voidaan lisätä jälkikäteen helposti myös makroja käyttäen. Ohessa esimerkki postinumeroista. Olen jakanut toiminnon kahtia: 1. SUB-toimintosarja: KorjaaPnro käy läpi valitun alueen FOR EACH[…]

Windowsin rekisterin hyödyntäminen

Silloin tällöin tulee tilanne, että luodessamme uutta asiakirjaa tarvittaisiin edellisestä asiakirjasta viimeiseksi käytettyä tietoa, esimerkiksi juokseva numero Excelissä tai asiakirjan juokseva numero Wordissa. Tapoja on[…]

Suomenkieliset kuukaudet englanniksi

Itselleni tulee aika usein esiin tilanteita, että jo tehdystä taulusta tulisi muuttaa kuukauden nimet suomesta englanniksi, esimerkiksi kun olen ryhmitellyt Pivot-taulukossa päivämäärät kuukausiksi. Tein makron,[…]

PowerPointin kuvien kielen vaihtaminen

Kuinka moni on tuskaillut kuvien eri tekstiosien kieliasetuksilla? Itse olen monesti, mutta nyt sain ainakin omissa kuvissani kieliasetukset toimimaan seuraavalla pienellä makrolla. Makro käy läpi[…]

Virheiden hallinta

ON ERROR Virhehallinta otetaan käyttöön ON ERROR GOTO xxx -komennolla. xxx on nimi, johon siirrytään virheen tapahtuessa. Esim.: ON ERROR GOTO VirheHallinta Virheenhallintarutiini on usein[…]

Infoa käyttäjää ohjelman edistymisestä

Kolme esimerkkiä informoida käyttäjää miten ohjelma edistyy. Kahdessa ensimmäisessä käytän tilariviä (StatusBar) ja kolmannessa käytän valintaikkunaa. Koodi lukee soluja ja kertoo kuinka ohjelma edistyy. Tilarivillä[…]

PowerPivot päivitys

Automaattinen Pivot ja PowerPivot päivitys toimii Excel versiossa 2013. Excel versioon 2013 on lisätty ominaisuus jolla päivitys voidaan hoitaa automaattisesti. Jos se halutaan tehdä normaalissa[…]

Kuukauden lisäys ja solujen tyhjennys

Kuukauden lisäys Taas kerran tarvitsin toiminnon jolla lisätään yksi kuukausi annettuun päivämäärään. Ratkaisin sen omalla funktiolla “LisaaKuukausi” VBA:ssa voit käyttää DateAdd komentoa päivämäärien laskentaan. Oheisessa[…]

Sähköpostiosoitteen poiminta hyperlinkkisolusta

Viikko takana ja mm tämä asia viikolla esiin. Osoitelista Excelissä jossa on hyperlinkit sähköpostiositteissa. Eli kun osoitat solua Excel näyttää sinulle “mailto:nimi@osoite.com” Jos haluat vaikka[…]