Narečeni primjer 105 ne će radi. Bagovito.
Napravili Sub PdfIt() i zakačili ga za nacrtani makro gumb kao izvršni.
Sub PdfIt()
REM A folder named /Users/andja/Desktop/zadaci/tip1/ must exist
Call WriteFile()
Shell("/Users/andja/Desktop/zadaci/tip1/lopdf.sh", 1)
End Sub
Taj Sub pozivlje Sub WriteFile().
Sub WriteFile()
Call SaveTeXSheetAsPlainText("/Users/andja/Desktop/zadaci/tip1/prim105.tex", "tex")
End Sub
Pošto se oCell.getSrting() uporno pravio manit uzeli smo nešto gotovo s duplom (i,j možda i nepotrebnom) petljom što radi i nazvali to Sub SaveTeXSheetAsPlainText (vidi poziv iz prethodnog Sub WriteFile()).
Sub SaveTeXSheetAsPlainText(aFileName As String, SheetName As String)
Dim oSheets As Variant
Dim oSpreadsheet As Variant
Dim oCursor As Variant
Dim oDataArray As Variant
Dim oneRow As Variant
Dim iNumber As Integer
oSheets = ThisComponent.getSheets()
If NOT oSheets.hasByName(SheetName) Then
MsgBox("Sheet named '" & SheetName & "' not found!", 48, "Attention!")
Exit Sub
EndIf
oSpreadsheet = oSheets.getByName(SheetName)
REM Select only UsedArea
oCursor = oSpreadsheet.createCursor()
oCursor.gotoStartOfUsedArea(False)
oCursor.gotoEndOfUsedArea(True)
REM Get data from all selected cells
oDataArray = oCursor.getDataArray()
REM Open output file
iNumber = Freefile()
Open aFileName For Output As #iNumber
REM Write each non empty cell in single line
For i = LBound(oDataArray) To UBound(oDataArray)
oneRow = oDataArray(i)
For j = LBound(oneRow) To UBound(oneRow)
If oneRow(j) <> "" Then Print #iNumber, oneRow(j)
Next j
Next i
Close #iNumber
End Sub
Onda se uzjogunila bash skriptica. U međuvremenu je instaliran TeXLive 2012.
Izvršna? Terminal:
$ cd /Users/andja/Desktop/zadaci/tip1/
$ chmod +x lopdf.sh
Opet ne ide.
prim105.tex (timestamp) se ažurira, prim105.pdf ne.
Putanja do novog pdflatex-a? Od redundancije glava ne boli?
Ajmo metnit sve pune putanje unatoč tekućoj radnoj mapi zadanoj iz drugog redka:
#!/bin/bash
cd /Users/andja/Desktop/zadaci/tip1/
/usr/texbin/pdflatex /Users/andja/Desktop/zadaci/tip1/prim105.tex
open /Users/andja/Desktop/zadaci/tip1/prim105.pdf
exit
Radi.
Dok opet ne zapne?