Useita satoja sivuja sisältävästä dokumentista pitäisi kopioida sellaiset rivit, joissa esiintyy tietyt kaksi merkkijonoa. Käytännössä merkkijonot ovat perättäisillä riveillä.
Esimerkiksi:
qqqqqqqqqqq Merkkijono1: xxxxxxxxxxxxxxxx
ööööööööööööööööööö Merkkijono2: xxxxxxxxxxxx
zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz
Merkkijono1 xxxxxxxxxxxxxxxx
Merkkijono2
Ongelmana minulla on, että vaikka em. kentät (merkkijonot) ovat sinänsä määrämuotoisia MUTTA merkkijono2: -kenttä voi olla myös tyhjä.
Tulikohan nyt riittävän epäselvästi selitettyä... Mutta kiitokset, jos apu löytyy vaikka täältä!
VBA tiettyjen rivien kopiointi
1
<50
Vastaukset
- tuttumies
Kävipä hassusti. Luulin, että olin OpenOffice -sivustolla, kun luin aloitusviestin. Sitten massamuististani löytyi tämmöinen OpenOfficessa jotenkin toimiva koodi:
------------------
Sub Main
RivitEriTiedostoon("Merkkijono1",1)
End Sub
Rem Muunnoslähde: https://wiki.openoffice.org/wiki/Writer/API/Text_cursor
Rem alkuperäinen laatija: JohnV (2003)
Rem Muunnos: RJ/2015
Sub RivitEriTiedostoon (sMerkkijono as String, iRiviLkm as Integer)
dim oDoc,oVC,NewDoc,filename,url,oTC,oNewDocVC,newname,newurl,n
oDoc = ThisComponent
oVC = oDoc.CurrentController.getViewCursor 'Create View Cursor oVC
oVC.gotoStart(false) 'Make oVC position itself to the start of the document
NewDoc = StarDesktop.loadComponentFromURL("private:factory/swriter","_blank",0,Array()) 'Open blank Writer doc
oNewDocVC = NewDoc.CurrentController.getViewCursor 'Create another View Cursor for this new document
Do
oTC = oDoc.Text.createTextCursorByRange(oVC) 'Create Text Cursor by cloning the View Cursor (both have same position in doc)
oVC.gotoStartOfLine(False)
oVC.gotoEndOfLine(True) 'Valitaan uusi rivi
'oVC.jumpToEndOfPage 'Move View Cursor oVC to EndOfPage
oTC.gotoRange(oVC,true) 'Move Text Cursor to same location as oVC while selecting text in between (True)
IF Instr(oTC.String,sMerkkijono) then
Rem riviltä löytyi 1. tunnusmerkkijono
Rem laajennetaan valintaa yhdellä rivillä
oVC.goDown(iRiviLkm, False) 'Rivejä alaspäin, esim. 1
oTC.gotoRange(oVC,true) 'Tekstikursorivalinta
oNewDocVC.String = Chr(10) & oTC.String & Chr(10)
oNewDocVC.gotoEnd(False) 'Varmistetaan, ettu tuloskursori on alimpana. Ehkä turhaa tässä?
EndIf
Loop While oVC.goDown(1, False) 'Katkaissee valinnan siirryttäessä seuraavalle riville?
'NewDoc.dispose 'Close NewDoc
Rem Tulostiedosto jää tallentamattomana auki
End Sub 'RivitEriTiedostoon
------------------
Tiedä sitten, saako tuota muokattua VBA:lla toimivaksi? Osa pitkistä riveistä voi olla poikki tämän s24-systeemin vuoksi?
Ketjusta on poistettu 0 sääntöjenvastaista viestiä.
Luetuimmat keskustelut
en vaan saa häntä pois
Mielestäni pyörimästä. Onko kellekään toiselle käynyt näin? Ihastuin pakkomielteisesti noin vuosi sitten erääseen naiseen. Ei vaan katoa mielestä va1762195Suomi24 kysely: ihmisten kuplautumista ei pääosin koeta vakavaksi ongelmaksi
“Kuplautumista on mahdotonta estää. Ihmiset ovat aina viihtyneet samankaltaiset arvot ja maailmankatsomuksen jakavassa seurassa ja muodostaneet sen pe381779Ohhoh! Glamourmalli Elena, 29, teetti tiimalasivartalon - Vei rahaa ja tuotti tuskaa - Katso kuvat!
Transtaustainen glamourmalli Elena Vikström on käynyt vuosien ajan plastiikkakirurgisissa toimenpiteissä. Tästä näet lopputuloksen: https://www.suomi121535Ostiko Martina uuden ponin tyttärelleen, vai oliko myös Stefan itsekkin valitsemassa ponia .?
Kiva kun on tyttärelle mielekäs harrastus annettu, ehkä vielä on tulevaisuudessa hänelle tärkeä ja valitsee sen perusteella tulevan ammatin.2371283Sinä olet tärkeä
Herätät minussa kunnioitusta. Kiehdot minua. En oikein saa kiinni sinusta. Ehkä juuri siksi. Aistin että sinäkin pidät minusta. Vetovoima on ollut alu621270Varisjärvellä mersu.
Varisjärven tiellä tuli vanhamersu kylkiedellä mutkassa vastaan ja vähällä keulaan mutta tökkäs penkkaan, hyppäsin omasta autosta ulos ja kävin kiskas171091Belorf haistattaa seuraajiaan "You can hate me now"...
Vai haistattaako lompakkoa, joka taisi viimeinkin ymmärtää häipyä Sofian ulottumattomiin ? Sofia raukka on niin typerä, että ottaa nostetta "omasta tv621027- 60990
Wau mikä kroppa Sofialla
Kuva instassa kun on suihkurusketuksessa. Kyllä on muodot kohdallaan, on kuin jumalainen Venus patsas. Eikä ole mitään järkyttäviä lonkero tatuointeja104700