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.

Solutions Collecting From Web of "Tipo di errore di errore 13 Excel VBA"

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