› Sviluppare funzionalita su Microsoft Office con VBA › Errore in COLOR INDEX
-
AutoreArticoli
-
Sub X_MSG_beg(ByVal MSGP, MSGQ As String, RIGT As Integer) ' Set MM = Workbooks("LOGISTA_MACRO.xls").Worksheets("MACRO") Workbooks("LOGISTA_MACRO.xls").Worksheets("MACRO").Activate Application.ScreenUpdating = True MM.Unprotect Call M_SET_BAR MM.Range("A14").Select MM.Range("A14") = "in Esecuzione" If MSGQ <> "" Then MM.Range("A16") = MSGQ End If MM.Range("A17") = "..." MM.Range("A17").Font.ColorIndex = 2 If MM.Range("E14") = 0 Then MM.Range("A15") = MSGP MM.Range("A15").Font.ColorIndex = 6 If MsgBox("CONFERMA Esecuzione", vbDefaultButton2 + vbOKCancel, MSGP) <> 1 Then MM.Range("A14") = "Esecuzione ANNULLATA" MM.Range("A17") = "" MM.Protect End End If MM.Range("E14") = Now() MM.Range("F14") = Now() MM.Range("F15") = MM.Cells(RIGT, "EF").Value RIGS = RIGT End If MM.Protect Application.CutCopyMode = False Application.ScreenUpdating = False Application.Wait (Now + TimeValue("0:00:01")) ' End SubLa macro riportata, richiamata da una Call, ha sempre funzionato senza problemi.
Ora mi da una segnalazione di MEMORIA INSUFFICIENTE e poi un errore dove il debug segnala (più o meno) di " impossibilità di eseguire colorIndex = 2 per la classe di font" ...
Remmando le due istruzioni con ColorIndex rifunziona tutto perfettamente.
Qualcuno sa dirmi cosa diav... sta succedendo?
Grazie carissimi!
Hai provato ad usare al posto di colorindex = "n" il colore RGB(a,b,c) ?
sfruculiando sui forum sul problema, da qualche parte qualcuno suggerisce di attivare "prima" la cella:
MM.Range("A17").Activate MM.Range("A17").Font.ColorIndex = 2Che non è lo stesso di selezionarla (Select)
Può essere?
In ogni caso, qual'è la differenza fra Select e Activate?
In ogni caso, qual'è la differenza fra Select e Activate?
"Guida di riferimento per sviluppatori di Excel
Range.Activate, metodo
Attiva una singola cella contenuta nella selezione corrente. Per selezionare un intervallo di celle, utilizzare il metodo Select.Sintassiespressione.Activate
espressione Variabile che rappresenta un oggetto Range.
Valore restituito
VariantEsempio
In questo esempio vengono selezionate le celle A1:C3 di Sheet1 e viene quindi attivata la cella B2.
Visual Basic, Application Edition
Worksheets("Sheet1").Activate
Range("A1:C3").Select
Range("B2").Activate"Qual è il punto di avere gusti diversi, se non mostrare che i cervelli lavorano diversamente, che pensiamo diversamente? ( Alan Turing)
Sempre il mare, uomo libero, amerai!
( Charles Baudelaire ) -
AutoreArticoli
