我有这个宏用于反转所选行的顺序。
这个宏在我的英文电脑上使用excel 2007顺利运行,但在我的法国电脑上使用excel 2016无效。
当我在法国电脑中运行它时,这一行For j = 1 To UBound(Arr, 2) / 2
给我一个错误信息
''编译错误:语法错误''
Sub FlipRows()
'Updateby20131126
Dim Rng As Range
Dim WorkRng As Range
Dim Arr As Variant
Dim i As Integer, j As Integer, k As Integer
On Error Resume Next
xTitleId = "KutoolsforExcel"
Set WorkRng = Application.Selection
Set WorkRng = Application.InputBox("Range", xTitleId, WorkRng.Address, Type:=8)
Arr = WorkRng.Formula
For i = 1 To UBound(Arr, 1)
k = UBound(Arr, 2)
For j = 1 To UBound(Arr, 2) / 2
xTemp = Arr(i, j)
Arr(i, j) = Arr(i, k)
Arr(i, k) = xTemp
k = k - 1
Next
Next
WorkRng.Formula = Arr
End Sub
答案 0 :(得分:0)
您需要更改为;
这是导致问题的区域设置,分号的原因是区分小数分隔符,在许多国家/地区是逗号而不是点。
另一种选择是更改Excel版本中的分隔符(,。和;)