Tipo di errore di errore 13 Excel VBA

Salve Aiutaci a questo errore.

i = 0 Dim ci As Integer pi = Array(0.5, 0.7, 0.8, 0.9) ci = 1 For i = 0 To UBound(Criteria) Windows("Demo.xlsx").Activate Worksheets("Raw_Data").Activate LastRow = Cells(Rows.count, "A").End(xlUp).Row ActiveSheet.Range("A1:H" & LastRow).AutoFilter field:=TaskType, Criteria1:=Criteria(i) ActiveSheet.Range("A1:H" & LastRow).AutoFilter field:=Status, Criteria1:="=Completed" Columns(Elapse).Select Selection.Copy Windows(fname).Activate Sheets("Calculation").Select For J = 1 To UBound(Criteria) Columns(ci).Select ActiveSheet.Paste For ri = 2 To 5 MsgBox "=ROUND(PERCENTILE(A:A," & pi(ri - 2) & "),2)" Range(Columns(ci + 1) & ri).Value = "=ROUND(PERCENTILE(A:A," & pi(ri - 2) & "),2)" Next ri Range(Columns(ci + 1) & (ri)).Value = "=ROUND(AVERAGE(A:A),2)" Range(Columns(ci + 1) & (ri + 1)).Value = "=ROUND(MAX(A:A),2)" Next J ci = ci + 2 Next i 

Sto generando errore su questa linea Gamma (colonne (ci + 1) & ri) .Value. Ho provato a eseguire il debug ma non ho avuto alcuna soluzione.

Non sono sicuro se puoi utilizzare Columns come Range in questo module:

Range(Columns(ci + 1) & ri).Value = "=ROUND(MAX(A:A),2)

È ansible utilizzare qualcosa di simile:

Columns(ci + 1 + ri).Value = "=ROUND(MAX(A:A),2)"

Ma riempire tutta la colonna con la formula non è una buona idea, migliore gamma di utilizzo un po 'diversamente:

Range(Cells(1, ri), Cells(LastRow, ri)).Value = "=ROUND(MAX(A:A),2)"

Forse l'ultimo esempio sarà utile