我有这个宏用于反转所选行的顺序。
这个宏在我的带有 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
最佳答案
您需要将 , 更改为 ;
这是一个区域设置导致问题,分号的原因是为了区分小数分隔符,在许多国家/地区是逗号而不是点。
另一种选择是更改 Excel 版本中的分隔符(、. 和 ;)
关于VBA excel英语2007导致excel 2016法语错误消息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40119440/