View Single Post
Old 10-12-2008, 12:28   #3
serbring
Senior Member
 
L'Avatar di serbring
 
Iscritto dal: Sep 2003
Città: Modena
Messaggi: 4125
ti ringrazio...
Ma la funzione mi ritorna il valore vero ancor prima che sia stato eseguito l'evento load. Com'è possibile?
Cmq andando nello specifico ti illustro il mio vero problema visto che questa proprietà non me lo risolve.
In pratica, ho creato un pivotchart che mi visualizza una serie di istogrammi. Vorrei che ogni volta che viene modificato il grafico, la formattazione del chart rimanga costante. Ho creato il codice sotto elencato ma mi dà sempre l'errore di run-time '1004': paramentro non valido", nella riga evidenziata in grassetto. Grafici accelerazioni è il nome del form nel quale viene generato un evento. Cioè la sub form_viewchange viene generato quando deve essere ridisegnato il form "grafici accelerazioni"
Ho notato che dopo la prima visualizzazione non mi viene ritornato alcun errore e per questo pensavo che il problema sia quello di sapere se la maschera è stata caricata o meno.

Codice:

Private Sub Form_ViewChange(ByVal Reason As Long)
    Dim ochart As ChChart
    Dim mycol(13) As Long
    Dim num As Integer
    If CurrentProject.AllForms("grafici accelerazioni").IsLoaded = True Then
    Set ochart = Forms("grafici accelerazioni").ChartSpace.Charts(0)
	mycol(1) = RGB(0, 128, 128)
	mycol(2) = RGB(0, 128, 0)
    	mycol(3) = RGB(255, 0, 0)
	mycol(4) = RGB(255, 204, 0)
	mycol(5) = RGB(128, 0, 128)
	mycol(6) = RGB(255, 153, 0)
    	mycol(7) = RGB(153, 204, 255)
    	mycol(8) = RGB(255, 255, 204)
    	mycol(9) = RGB(0, 0, 128)
   	mycol(10) = RGB(204, 153, 255)
    	mycol(11) = RGB(128, 128, 128)
    	mycol(12) = RGB(200, 100, 100)
    	mycol(13) = RGB(255, 50, 50)
    	num = ochart.SeriesCollection.Item(0).DataLabelsCollection.Count
    	For i = 0 To ochart.SeriesCollection.Count - 1
        	s = ochart.SeriesCollection(i).Name
        	num = ochart.SeriesCollection.Item(i).DataLabelsCollection.Count
        	If num = 0 Then
            		ochart.SeriesCollection(i).Interior.Color = mycol(i)
             		With ochart.SeriesCollection(i).DataLabelsCollection.Add
	                	.HasValue = True
	        	        .Font.Size = 8
        	        	.Font.Bold = True
	        	        .Font.Color = ochart.SeriesCollection(i).Interior.Color
                		.NumberFormat = Format("#0.00")
	    		        .Position = chLabelPositionOutside 
            		End With
        	End If
	Next
   End If
End Sub
questa è l'unica routine che tengo nel form.
__________________
ho concluso felicemente con: masterGR, piantax, aragorn85, battalion75, lukas785, cagnulein, CaFFeiNe, josty,kabira85 e tanti altri
serbring è offline   Rispondi citando il messaggio o parte di esso