Ho provato ad inserire il codice VBA in OOo.Calc, ma ho avuto una serie
di errori su moduli non supportati dal motore interno sun.
Quindi ho
deciso di provare a tradurre la macro, ecco come mi sta venendo:
Sub
InitFlash
Dim oSheet As Object
Dim oCell As Object
Dim oCellTxtCol As
Long
Dim oCellBkgCol As long
oSheet = ThisComponent.
CurrentController.ActiveSheet
oCell = ThisComponent.
getCurrentSelection
oCellBkgCol = ThisComponent.getCurrentSelection.
CellBackColor
oCellTxtCol = ThisComponent.getCurrentSelection.
CharColor
call flash
End Sub
Sub Flash
if ThisComponent.
getCurrentSelection.CellBackColor < 0 Then
ThisComponent.
getCurrentSelection.CellBackColor = RGB(165, 165, 165)
ThisComponent.
getCurrentSelection.CharColor = RGB(0, 0, 0)
else
ThisComponent.
getCurrentSelection.CellBackColor = -2 mod 3
ThisComponent.
getCurrentSelection.CharColor = RGB(0, 0, 0)
end if
call flash
End
Sub
Il problema sono le chiamate a OnTime Now + TimeValue("00:00:01")
che non riesco a tradurre e sulla rete nessuno sembra avere avuto
questo problema, io devo far lampeggiare la casella quando premo la
selezione ctrl+c, e il codice sopra anche se non bello sembra farlo, ma
troppo velocemente, quasi non si vede che cambia colore, ogni
suggerimento per cambiare il listato è ben accetta e sarà apprezzato
anche dai nostri bimbi....
Grazie
----Messaggio originale----
Da:
[EMAIL PROTECTED]
Data: 24-nov-2006 6.32 PM
A: <[EMAIL PROTECTED]
org>
Ogg: Re: [dev-it] Problema generazione macro OOo.Calc
[EMAIL PROTECTED]
it ha scritto:
> Premetto che non conosco molto bene il SB di OOo 2.0.4
che utilizzo sul
> sistema Ubuntu, ho sempre e solo creato macro con
VBA.
> Il problema
> riguarda un foglio di Calc che dovrebbe fare da
cartellone
> videoproiettato per una tombola per bambini di paese.
Questo foglio
> dovrebbe evidenziare le caselle selezionate
lampeggaindo fino alla
> nuova selezione, in VBA l'avevo risolto così:
>
> Public OrigBkgCol As
> Long, OrigTxtCol As Long
> Public OldCell
As Range
>
> Sub InitFlash()
>
> Set OldCell = ActiveCell
> OrigBkgCol = ActiveCell.Interior.
> ColorIndex
> OrigTxtCol =
ActiveCell.Font.ColorIndex
> Application.
> OnTime Now + TimeValue
("00:00:01"), "Flash"
>
> End Sub
>
> Sub Flash()
>
>
> If
ActiveCell.Interior.ColorIndex < 0 Then
> ActiveCell.Interior.
> ColorIndex = 15 'colore fondo bianco
> ActiveCell.Font.
>
ColorIndex = 1 'colore testo nero
> Else
> ActiveCell.
>
Interior.ColorIndex = 2 Mod 2
> ActiveCell.Font.Color = 1
>
End
> If
>
> Application.OnTime Now + TimeValue("00:00:01"),
"Flash"
>
> End
> Sub
>
>
> Ma in Calc mi è difficile tradurre questo
soprattutto perché non
> so come accede alle celle.
>
>
> Come posso
fare qualcosa del genere, anche
> senza lampeggiare, solo modificare
il colore dello sfondo quando
> seleziono la cella.
>
>
> Grazie 1000
da me e dai miei ragazzi.....
>
>
---------------------------------------------------------------------
>
To unsubscribe, e-mail: [EMAIL PROTECTED]
> For
additional commands, e-mail: [EMAIL PROTECTED]
>
>
>
>
Ciao,
se utilizzi il pachetto /OOo 2.0.4 di Ubuntu ..... allora
funziona
"bene" anche il codice in VBA.
x Info: OOo 2.0.4 e VBA
<http:
//applications.linux.com/article.pl?sid=06/11/08/1726205&from=rss>
/
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]