2016-10-18 2 views
1

이 매크로를 사용하여 선택한 행의 순서를 반전합니다. 이 매크로 실행 엑셀 2007과 내 영어 PC에서 부드러운하지만 난 프랑스의 PC에서 실행하면 엑셀 2016 내 프랑스어 PC에서 작동하지 않습니다,이 라인 For j = 1 To UBound(Arr, 2)/2 나에게 오류 MSG를 얻을 수VBA 엑셀 영어 2007 원인 오류 메시지에 excel 2016 프랑스어

''컴파일 오류 : 구문 오류 ''

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

영어 2007 버전에서는 컴파일되지만 프랑스어 2016 버전에는 적합하지 않습니다 – Anarchy98

+0

질문에 대답하는 것 같지 않습니까? –

답변

0

다음으로 변경해야합니다.

문제를 일으키는 지역 설정이므로 세미콜론을 사용하는 이유는 많은 국가에서 점 대신 쉼표로 구분 된 소수 구분 기호와 구분되기 때문입니다.

다른 옵션은 Excel 버전 (,. 및;)의 구분 기호를 변경하는 것입니다.