0

所以我没有太多的编程经验,几乎没有VBA。我的主要问题是我的代码中的公式超出了 1 行,当我包含下划线、空格然后开始新行时,我收到一个错误。

我附上了代码的图片,可能有不必要的代码行,因为我录制了一个宏来获取代码。

有关我正在尝试做的事情的更多信息:

我有一个包含在使用“数据验证”的单元格中的列表,并且基于从该列表中的选择,下面的单元格将输出某个列表。

这些列表的信息存储在工作簿的其他工作表中。

我能够在“数据验证”列表源框中开发一个适用于多个输入的 IF 语句。但是,我有 84 种可能性,并且无法在列表源框中放置所有单独的 if 语句。因此,我决定尝试使用 VBA 手动输入公式,方法是记录几个输入“数据验证”if 语句的宏。

这是代码:

Sub HelpSetUp()
     With Selection.Validation
         .Delete
         .Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, Operator:= _
         xlBetween, Formula1:= _
         "=if($B$2='fuel columns'!$A$1,agriculturalbiproduct,if($B$2='fuel      columns'!$B$1,agriculturalresidue,if($B$2='fuel columns'!$C$1,agriculturalwaste,Nofuel)))"
        .IgnoreBlank = True
        .InCellDropdown = True
        .InputTitle = ""
        .ErrorTitle = ""
        .InputMessage = ""
        .ErrorMessage = ""
        .ShowInput = True
        .ShowError = True
    End With
End Sub 
4

1 回答 1

3

当您有很长的文本要挤入时,您需要使用“&”和_将其分成块。

像这样

将 aString 暗淡为字符串

aString = "four score and seven years ago our fathers " & _ 
    "set forth on this continent a new nation, " & _
    "conceived in liberty and dedicated to the " & _
    "proposition that all men are created equal."

请务必在 & 和 _ 之间留一个空格。

小微

于 2013-07-31T20:26:13.037 回答