Marius44, 15/04/2018 23.34:Ciao Ho scaricato l'allegato. Ma quali dovrebbero essere i dati da graficare? Nelle col. E, F e G vi sono solo 2 valori che si ripetono mentre gli orari sono diversi. Cosa dovrebbe essere riportato nel grafico? Ciao, Mario
Option Explicit Sub Grafico() Dim ur As Long, i As Long, j As Long, a As Long, b As Long Dim riga1 As String, riga2 As String, elenco As String, graph As String Dim Rng As Range ur = Cells(Rows.Count, 5).End(xlUp).Row Range("J1:N" & ur).ClearContents 'cancella precedenti 'copia/incolla dati Range("E1:H" & ur).Copy Range("J1").PasteSpecial Paste:=xlPasteAll For i = 2 To ur 'arrotonda l'orario al minuto Cells(i, 13) = Application.WorksheetFunction.MRound(Cells(i, 13), 1 / 1440) Next i 'elimina i doppioni e ne calcola la quantità For i = 2 To ur - 1 a = i For j = i + 1 To ur riga1 = Cells(i, 10) & Cells(i, 11) & Cells(i, 12) & Round(Cells(i, 13), 5) riga2 = Cells(j, 10) & Cells(j, 11) & Cells(j, 12) & Round(Cells(j, 13), 5) If riga1 = riga2 Then Cells(a, 14) = Cells(a, 14) + 1 Range("J" & j & ":M" & j).ClearContents b = b + 1 End If Next j i = i + b: b = 0 Next i 'ordina l'elenco ridimensionato elenco = "J1:N" & ur Range(elenco).Sort Key1:=Range("M1"), Order1:=xlAscending, Header:=xlGuess, _ OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom 'assegna nuovi valori ur = Cells(Rows.Count, 10).End(xlUp).Row graph = "Foglio1!$M$2:$N$" & ur Set Rng = ActiveSheet.Range(graph) ActiveSheet.ChartObjects(1).Activate With ActiveChart .SetSourceData Source:=Rng .SeriesCollecti0n(1).XValues = "=Foglio1!$M$2:$M$" & ur .Axes(xlCategory).TickLabels.NumberFormat = "dd/mm/yy hh:mm;@" End With Set Rng = Nothing Cells(1, 1).Select End Sub
non credo che con quei dati si possa rappresentare un grafico comprensibile
Marius44, 17/04/2018 17.09:Ciao Allego il file (in cui ho tolto la macro per poterlo inserire qui) e vedrai nel Foglio2 due grafici, uno a linee e uno a barre. Ribadisco: risulta poco leggibile. Fai sapere. Ciao, Mario