我一直在参与在Excel 2010中写一个Excel工作簿中的数据分析不过,我最近发现,一些在本文档需要机器的使用运行Excel 2003.我知道的兼容性问题保存到.xls格式请参阅此处,但未能找到VBA代码更改的完整摘要,特别是如何从2010更改为2003(而不是其他方式).
我可以访问带有Excel 2002的计算机进行测试,但它很慢,在建筑物另一端的房间里,没有互联网访问权限.因此,为了避免在问题出现时来回查找问题,我希望能找到某种列表或摘要,以便在问题出现之前查明问题.
我知道有一个类似的问题已被问及2007-2003兼容性:
但是所有答案都只是建议使用虚拟机.我没有权限在我的工作计算机上安装程序(我主要不是用于编程/ IT),也没有在我的家用计算机上安装Office或访问许可证.
我无法弄清楚为什么VBA会对我大吼大叫.非常简单的代码,只涉及一个if语句,它显然有一个"Starting"If和一个匹配的End If.我是一名VB.NET开发人员,所以它可能与我所缺少的语法不同.
Sub splitter()
Dim line() As String
Dim rng As Range
Dim row As Range
Dim cell As Range
For Each row In rng.Rows
If row.Value <> "" Then
line = Split(Range(row, 1), ",")
Select Case line(0)
Case "Desktop"
Range(row, 8).Value = "Desktop"
Case "Laptop"
Range(row, 8).Value = "Laptop"
Case "Server"
Range(row, 8).Value = "Server"
Case Else
Range(row, 8).Value = "N/A"
End If
Next
End Sub
Run Code Online (Sandbox Code Playgroud)
具体来说,最终结果是它将根据"父"下拉列表(Range(row,1))的选择填充"Child"下拉列表(Range(row,8)).因为问题会出现,我使用VBA进行此操作的原因是因为我可以使用Split()函数以及Parent下拉列表中的项目的方式,例如."桌面,戴尔,745".另外,我是一个比excel开发人员更好的程序员.
有没有一种简单的方法来组合AND()和OR()Excel公式内.IE:
IF(OR(AND(A2="",B2=""),AND(A2="(blank)",B2="(blank)")),"BLANK","NOT BLANK")
Run Code Online (Sandbox Code Playgroud)
或者您是否需要使用嵌套来实现相同的最终目标?
我有一个自己的类(ClassFoo)与一个简单的属性(pName),我无法设置它,因为我总是得到错误...
Class Modules - ClassFoo
---
Public pName as String
Public Property Let Name(Value as String)
pName = Value
End Property
----
Somewhere else in the ModuleX
...
Dim Foo as ClassFoo
Foo.Name = "foo" <- throws error
Foo.pName = "foo" <- throws error
Run Code Online (Sandbox Code Playgroud)
要么
With Foo
.pName = "foo" <- throws error
End With
Run Code Online (Sandbox Code Playgroud)
我将班级'Instancing'从'Private'更改为'PublicNotCreatable'(来回)但我仍然有同样的错误......
感谢您提前回复.
铯
我尝试在excel中做一些问卷调查(是的,我知道有更好的方法可以做到这一点;-)
我有几张纸,每一张包含一些ActiveX选项按钮可供选择(是/否).
问题是,当我在第一张,第二张中选择一些问题并进一步进入下一张时,之前工作表中的一些选项按钮将再次被取消选中.我在这里看不到确切的模式,因为有些工作表保留了选项按钮的所有状态,有些会丢失所有状态,有些则以不同的方式检查它们.
所以我的问题是:这件事有什么特别的限制吗?如果这很重要,我的工作簿中有很多ActiveX对象.
我使用Office 2010.
我有一个 Range("B6:T10000")
在范围内的数据是的混合物blanks,#'s,numbers (formatted as texts),texts和最重要的formulas.
有人可以帮助使用VBA宏来:
非常感谢你
我试图找到一种使用Excel来确定单元格的第一个字符是数字还是字母的好方法.我使用它来确定一个标记是否标记取决于答案.这是一个示例表:
**Status Code** Inactive 2AJ Active ALO Active PN9 Active Y2Y Inactive 1P9
实质上,如果" 代码"列的开头字符是数字值,则" 状态"列应显示"非活动".目前我有这个,它不起作用:
=IF(ISNUMBER(LEFT(B1,1)),"Inactive","Active")
Run Code Online (Sandbox Code Playgroud) 我在Excel中有一列值,如下所示:

如何将其转换为下拉列表,例如列中的每一行都有下拉列表(包含狗,猫,鱼,蝙蝠,蟾蜍.......所有内部)
谢谢 !
我需要在工作表上查找文本值并从那里向下偏移两行的帮助。
我有一个带有“范围底部”标题的单元格。下方的两个单元格为实际值。问题是“范围底部”可能在7个可能的位置,具体取决于工作表模板。
如何找到其中包含“范围底部”的单元格?然后,我可以.Offset(2,0).value2得到我想要的。
在更宏大的计划中。我正在浏览数百本工作簿,然后遍历他们的每个工作表来收集数据并将其集中化。因为我要查找的值可能在任何地方,所以在获取这些值之前,我需要先查找它们的标题/定义。