WPS中无法使用Excel vba 的有关代码

Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Column = 3 And Target.Count = 1 And Target.Row > 1 And Target > 0 And Left(Target, 2) <> "超限" Then
A1 = 70: A2 = 60: A3 = 50: A4 = 40 '这里是四个固定数
S1 = "超限" & Round(Target / A1 * 100, 2) & "%,"
s2 = "超限" & Round(Target / A2 * 100, 2) & "%,"
s3 = "超限" & Round(Target / A3 * 100, 2) & "%,"
s4 = "超限" & Round(Target / A4 * 100, 2) & "%"
Target.ClearContents
Target.Validation.Add Type:=xlValidateList, Formula1:=S1 & s2 & s3 & s4
Target.Select
End If
End Sub

我有wps(专业版有vba功能),我也有excel。

上面的代码在excel中是可以正常运行的。但是在wps中不行。要改:

Private Sub Worksheet_Change(ByVal Target As Range)
   If Target.Column = 3 And Target.Count = 1 And Target.Row > 1 And Target.Cells(1).Value > 0 And VBA.Left(Target.Cells(1).Value, 2) <> "超限" Then
      A1 = 70: A2 = 60: A3 = 50: A4 = 40 '这里是四个固定数
      S1 = "超限" & Round(Target / A1 * 100, 2) & "%,"
      s2 = "超限" & Round(Target / A2 * 100, 2) & "%,"
      s3 = "超限" & Round(Target / A3 * 100, 2) & "%,"
      s4 = "超限" & Round(Target / A4 * 100, 2) & "%"
      Application.EnableEvents = False
      Target.ClearContents
      Application.EnableEvents = True
      Target.Validation.Add Type:=xlValidateList, Formula1:=S1 & s2 & s3 & s4
      Target.Validation.InCellDropdown = True
   End If
End Sub

温馨提示:答案为网友推荐,仅供参考
第1个回答  2014-03-14

同学你好,据我所知,WPS OFFICE是不支持MS OFFICE中VBA代码的。所以就无法使用了。

第2个回答  2014-03-14
您好,很高兴为您解答!
wps的vba,不支持某些excel函数,有的宏不能用。可以下个2003,应该 可 以用。
WPS会员睿享办公,一对一VIP专业服务,详情:http://vip.wps.cn/?from=qy
第3个回答  2014-03-14
你可以单独下个vba插件 然后安装上 就能用了估计追问

wps 的vba 我下了 就是运行代码的时候 不能像在Excel中一样显示结果

追答

这我就不晓得了 我不懂vba代码 卡卡