2016-10-18 20 views
1

私はこのマクロを使って、選択した行の順序を逆転させます。 このマクロを実行Excel 2007を持つ私の英語PC上でスムーズなしかし、私は、フランスのPCでそれを実行すると、エクセル2016 で私のフランス語のPC上では動作しません、このラインFor j = 1 To UBound(Arr, 2)/2は私にエラーMSGを取得VBA excel English 2007エラーメッセージon 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年版のExcelではコンパイルされません – Anarchy98

+0

私はあなたが質問した質問に答えているとは思わないでしょうか? –

答えて

0

を変更する必要があります。

問題を引き起こす地域の設定であるため、セミコロンの理由は、多くの国でドットの代わりにカンマで区切られた小数点記号と区別するためです。

Excelバージョン(、。および;)の区切り文字を変更することもできます。

関連する問題