Sub InsertRow()
Call BlankColumns
'Call DeleteZeros
'normalizes the data extracted from QM QSRs
'If Columns included in QSR Change, THe column references will have to be adjusted
Dim lastcol As Integer 'Idenfies How many Questions are in Dataset
Dim r2a As Long 'Row to copy
Dim nr As Integer '# of people to copy
Dim r2s As Integer 'will copy each data set for however many questions there is
Dim R As Integer 'Counts how many people are in the dataset
R = Range("A4", Range("A4").End(xlDown)).Rows.Count
With ActiveSheet
lastcol = .Cells(1, .Columns.Count).End(xlToLeft).Column - 6
r2a = (lastcol/2) - 2
r2s = (lastcol/2)
End With
For nr = 0 To R
Cells(((nr * r2s) + 4), 1).EntireRow.Copy
Range(ActiveCell, ActiveCell.Offset((r2a), 0)).EntireRow.Insert Shift:=xlDown
Next nr
Call pasteanswers
Call PasteActivityCode
Question = MsgBox("Upload information to Database?", vbYesNo + vbQuestion, "Database Upload")
If Question = vbYes Then
Call SaveWorkbook
Call ExportData
Else
End If
End Sub
der Fehler auftritt innerhalbZellen Überlauf Zeilenwert
Cells(((nr * r2s) + 4), 1).EntireRow.Copy
Mit dem obigen Code ich Probleme habe, wenn die Zeilenzellen Wert größer als 32.768 ist, wie kann ich dies für Long erlauben machen anstelle von Integer
Ich bin mir nicht sicher, wie Sie diese Zelle definieren, damit sie Zeilen referenzieren kann, die größer als eine ganze Zahl sind. Alternative Lösungen werden ebenfalls geschätzt!
Welche Version von Excel verwenden Sie? –
Stellen Sie sicher, dass alle Variablen Long sind, indem Sie sie explizit deklarieren. 'Dim R as Long' usw. –
Ich benutze Excel 2013, ich werde den ganzen Code einschließen, um ein klareres Bild zu geben und genau, wo der Überlauf auftritt! –