katson viikonloppuna tai huomenna perjantaina tarkemmin.
Teen todennäköisesti quick and dirty -ratkaisun, jos en heti keksi oikopolkua tehdä se universaalisti.
Ensiajattelemalla polun syvyys on suurin ongelma vai osaako joku sanoa suoralta kädeltä, miten saan excelin ...
a) kertomaan solussa olevien tiettyjen merkkien lkm?
ja/tai
b) muuttamaan solun järjestys päinvastaiseksi eli ABCD... => ...DCBA.
Jos näihin löytyy ratkaisu, saan tehtyä universaalin ratkaisun, joka on riippumaton polun syvyydestä.
Mutta katsotaan paremmalla ajalla (klo 0:02 nyt ja hieman väsyttää jo....)
=========== ================== =================
1) kopio soittolista exceliin sarakkeeseen B alkaen solusta B1. Kopio esim. notepadistä tai vastaavasta exceliin komennolla "edit/paste special/text". Formaatti siksi ettei tule hyperlinkkejä.
2) Soittolistoja on sellaisia, joissa on pelkkä listaus mediakappaleista ja sellaisia joissa on näitä "#EXT"-alkuisia rivejä. Meitä eivät kiinnosta "#EXT"-alkuiset rivit, eli filtteroimme ne pois.
Korjoita soluun A1 seuraava kaava:
=if(iserror(find("#EXT";B1));"";"x"
ja kopio sitä alas niin pitkälle kuin soittolistasi ylttää.
Eli turhille riveille B-sarakkeeseen ilmestyi "x"
Valitse nyt rivi 1 ja valitse "data/filter/autofilter" ja
klikkaa solun A1 filtteriä ja valitse "(Blanks)"
3) Seuraavaksi tarvitaan tieto polusta ja kappaleesta erikseen. Koska meillä ei ole tietoa polun syvyydestä, oletamme, että se on välillä 1-10 ja rakennamme nopean-ja-likaisen ratkaisun.
kirjoitamme luvut 1-10 soluihin C1..L1 (C1=1 ja L1=10). Soluun M1 kirjoitamme "apusolu", soluun N1 "polku" ja soluun O1 "tiedosto". Tämä vain itsellemme selkeyden vuoksi. Teksti "apusolu" on tärkeä, käytämme sitä indeksointiin. Kirjoita soluun R1 "-merkki.
Seuraavat kaavat kirjoitamme riville 3 tässä esimerkissä, koska se on tässä esimerkissä ensimmäinen rivi, jolla on meille tärkeää tietoa. Muokkaa tämä tieto aina tilanteen mukaan, eli aloita siltä riviltä missä tärkeä tieto alkaa.
Kirjoita seuraava kaava soluun C3:
=IF(ISERROR(RIGHT(B3;LEN(B3)-FIND("\";B3)));"apusolu";RIGHT(B3;LEN(B3)-FIND("\";B3)))
ja kopioi se soluun L3 asti.
Kirjoita soluun M3:
=10-COUNTIF(C3:L3;$M$1)
Kirjoita soluun O3:
=HLOOKUP($M3;$C$1:$L3;ROW();FALSE)
Kirjoita soluun N3:
=HLOOKUP($M3-1;$C$1:$L3;ROW();FALSE)
Kirjoita soluun P3:
=LEFT(N3;LEN(N3)-LEN(O3))
Kirjoita soluun Q3:
="MD "&$R$1&$S$1&LEFT(N3;LEN(N3)-LEN(O3))&$R$1
Kirjoita soluun R3:
="xcopy "&$R$1&B3&$R$1&" "&$R$1&$S$1&P3&$R$1&" /Q /y"
4) Nyt meillä on kaikki tarvittavat tiedot. Seuraavaksi generoidaan bat-fiilun komennot sarakkeeseen "Q" (hakemisto) ja "R" (kopiointi). Kirjoita MP3-soittimesi hakemisto soluun "S1"
Nyt merkitset rivin 3 solut alkaen C3:sta R3:een ja vedät alas (kopioit kaavat)
Avaa DOS-ikkuna.
Kopio sarakkeen Q tiedot solusta Q3 alkaen. Mene DOS-ikkunaan ja paste:aa (luodaan uudet hakemistot)
Kopio sarakkeen R tiedot solusta R3 alkaen. Mene DOS-ikkunaan ja paste:aa (kopioidaan soittolistan tiedot oikeisiin hakeistoihin)
VALMIS
Viestiä on muokattu lähettämisen jälkeen. Viimeisin muokkaus 11. lokakuuta 2007 @ 22:16
|