繁体   English   中英

VBA Macro无法在法语Excel上运行

[英]VBA Macro not working on French excel

我为我的法国同行建立了一个宏,它似乎不想工作。 我了解有些功能需要更改,例如LEN变为NBCAR(根据我发现的网站)。 完成此操作后,在突出显示NBCAR时会出现错误提示“未定义子或函数”(法语)。 在我的宏版本中,未定义LEN,因此有点令人沮丧。 是否有快速解决方案,也许是一种方法,可以告诉VBA用英语阅读代码?

任何帮助将不胜感激。

谢谢

来自我的英语宏的代码:

Application.ScreenUpdating = False
Dim sh1 As Worksheet, N As Long
Dim st As String
Dim rng1 As Range
Dim rng2 As Range
Dim rng3 As Range
Dim sPath As String
Set sh1 = Sheets("VTR - MASTER")
Dim R As Integer
Dim Z As Range
Dim VTR As String
Dim W As Integer
R = 1
W = 1
VTR = Sheets("VTR - INFO").Range("J1").Value

MsgBox "Select Destination To Save ORT CSV", vbInformation, "Select Destination"
    With Application.FileDialog(msoFileDialogFolderPicker)
    .AllowMultiSelect = False
    .Show

    If .SelectedItems.Count > 0 Then
        sPath = .SelectedItems(1)

' Filter Merchant ID

MERCHID = sh1.Cells(Rows.Count, "A").End(xlUp).Row

For i = 2 To MERCHID
    v = sh1.Cells(i, 1).Value
    If v <> "" Then
        st = st & v & ","
    End If
Next i
st = Mid(st, 1, Len(st) - 1)
Arr1 = Split(st, ",")

Sheets("VTR - DATA").Select
Sheets("VTR - DATA").AutoFilterMode = False
With Sheets("VTR - DATA").Range("A:Q")
    .AutoFilter Field:=2, Criteria1:=Arr1, Operator:=xlFilterValues
    .AutoFilter Field:=1, Criteria1:= _
    "<>SOR"
    End With


Set rng1 = Application.Intersect(ActiveSheet.UsedRange, Range("F:G,K:L"))
rng1.Offset(1, 0).SpecialCells(xlCellTypeVisible).Copy
Sheets("CSV").Cells(Rows.Count, "A").End(xlUp).Offset(1).PasteSpecial xlPasteValues
Application.CutCopyMode = False

Sheets("VTR - DATA").AutoFilterMode = False
Range("A1").Select

存在缺失的End If为:

If .SelectedItems.Count > 0

End With

With Application.FileDialog(msoFileDialogFolderPicker)

之后,它将编译确定。 (当然它不会运行,因为我没有名称为“ VTR-MASTER”等的工作表。)

如果VBA编辑器通过LEN类的功能显示错误,请检查菜单“工具-参考”中缺少的参考。 有时缺少引用会使VBA混淆,即使通过内部函数它也会显示错误。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM