Odgovori 
CALC prebaci datum (BASIC)

Poštovanje,
Makroom u Calc-u prebacujem datum iz "A1" u "B2" ćeliju. Međutim, mesto datuma, dobije se broj. Sadržaj ćelije iz koje kopiram datum definišem kao .string. Same ćelije su formatirane kao broj. Rešenje?

Evo dela koda:
Kod:
rem Broj ULAZNE FAKTURE (iz KALK BAZA u KNjigu prometa)
    oSheet2 = oDocumentModel.Sheets.getByName("BAZA FAKTURA")
    oDocumentView.ActiveSheet = oSheet2 'BAZA FAKTURA neka postane aktivan list
    
'selektuj ćeliju u BAZA FAKTURA koja je zadnja bila selektovana:
oCurrCell = ThisComponent.getCurrentController().getSelection()

'definiši (Cell1) ćeliju u istom redu u 1. koloni (redni broj ULAZNE FAKTURE):
Cell1 = oSheet2.getCellRangeByName ("A" & oCurrCell.CellAddress.Row +1)
V = Cell1.string

rem datum dokumenta
Cell2 = oSheet2.getCellRangeByName ("QJ" & oCurrCell.CellAddress.Row +1)
W = Cell2.string

rem Naziv firme
Cell3 = oSheet2.getCellRangeByName ("D" & oCurrCell.CellAddress.Row +1)
Y = Cell3.string

rem Adresa firme
Cell4 = oSheet1.getCellRangeByName ("L3")
Z = Cell4.string

rem Mesto firme
Cell5 = oSheet1.getCellRangeByName ("L4")
Q = Cell5.string

rem Naziv dokumenta
Cell6 = oSheet2.getCellRangeByName ("QL" & oCurrCell.CellAddress.Row +1)
T = Cell6.string

rem Broj dokumenta
Cell7 = oSheet2.getCellRangeByName ("C" & oCurrCell.CellAddress.Row +1)
P = Cell7.string

'neka list Knjiga prometa... postane aktivan:    
    oSheet3 = oDocumentModel.Sheets.getByName("KEPU")
    oDocumentView.ActiveSheet = oSheet3
    
' definiši zadnji put selektovanu ćeliju u Knjizi prometa(zbog reda)
    oCurrCell2 = ThisComponent.getCurrentController().getSelection()
    
'definiši ćeliju u Knjizi prometa (kolona OPIS KNJIŽENJA) u kojoj će se pastovati podatak        
PastCell1 = oSheet3.getCellRangeByName("C" & oCurrCell2.CellAddress.Row +1)

oCellText = PastCell1.getText()
oTextCursor = oCellText.createTextCursor()
oTextCursor.setString("ULAZNA FAKTURA  " + V )
oTextCursor.GoToEnd(false)
oTextCursor.setString(Chr(10))
oTextCursor.GoToEnd(false)
oTextCursor.setString(T + " " + P + "     od " + W)
oTextCursor.GoToEnd(false)
oTextCursor.setString(Chr(10))
oTextCursor.GoToEnd(false)
oTextCursor.setString(Y + ",  " + Z + ",  " + Q)

Citiraj ovu poruku u odgovoru

Deluje mi kao da je A1 formatirana kao datum (unutrašnja reprezentacija datuma je broj), dok je B2 formatirana kao broj. Pretpostavljam da bi sve bilo u redu ako B2 formatirate kao datum.

Možete i u makrou da iz A1 u B2 prenesete svojstvo formata sa Cell2.NumberFormat = Cell1.NumberFormat.
Poseti veb stranicu korisnika
Citiraj ovu poruku u odgovoru

Vaš predlog ne pomaže. Rešenje je bilo da formatiram string:
(w = Cell2.string)
Kod:
oTextCursor.setString( Format(W, "dd.mm.yyyy") )

Citiraj ovu poruku u odgovoru

Hvala.
Poseti veb stranicu korisnika
Citiraj ovu poruku u odgovoru
Odgovori 




Kontakt | otvorenidokument.com | Povratak na vrh | Povratak na sadržaj | RSS