将本地化项添加到Excel验证列表

时间:2017-02-03 13:36:49

标签: excel vba excel-vba localization excel-2007

我有2个验证in-cell下拉列表:

With Cells(1, 3).Validation
    .Delete
    .Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, Operator:= _
    xlBetween, Formula1:="Aktiv;Inaktiv"
    .IgnoreBlank = True
    .InCellDropdown = True
End With

With Cells(1, 5).Validation
    .Delete
    .Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, Operator:= _
    xlBetween, Formula1:=str
    .IgnoreBlank = True
    .InCellDropdown = True
End With

第一个填充如上(“Aktiv; Inaktiv”),第二个填充日期“1月17日; 2月17日; ...”)。如您所见,使用的分隔符是分号,因为这是德语Excel语法所指示的。

但是,当我想通过VBA插入值时,我必须使用逗号。这导致每次保存,关闭和重新打开后文件都会中断。错误是(粗略地)“在文件中找到不可读的内容”和“删除的功能:/xl/worksheets/sheet1.xml-Part中的数据验证”。

我重新创建了这个:当我使用错误的本地化分隔符时它会中断,当我接受删除功能时,它会删除我的验证列表。如何在VBA中成功完成此操作?

编辑:我的不好,我没有提到使用错误的分隔符的原因:

错误的分隔符:将项目插入1行:wrong_delim

右分隔符:分别在1行中插入项目:right_delim

0 个答案:

没有答案