对于一个VBA新手来说似乎是个愚蠢的问题,但我不知道如何写到VBA中的一个单元格.我在"Module1“中有一个函数,如下所示:
Function Foo(bar As Boolean)
Range("A1").Value = 1
Foo = ...
End Function
然后假设我把细胞A2的公式设为:
=Foo(true)
如果我拿出范围设定线的话,电话本身就能工作.在这种情况下,将调用单元格设置为foo值。但我希望这最终能立刻写出大量的细胞,而不是对每个细胞都有不同的函数调用。我做错什么了?
如果这段代码能按原样工作..。Excel 2007中是否存
我有一个由其他人编写的工作簿,并且某个特定的单元正在被一些代码更改。我找不出正在更改单元格值的代码。
除了在数百个过程中设置断点之外,我甚至无法找到缩小代码可能性的策略。所以我会对策略的想法很满意。
我在Microsoft中使用VBA非常有经验,在Excel中有一些使用VBA的经验。
编辑 Gotta larf.我甚至不能从一开始就开始执行F8代码。我是说..。在更改工作表中的值(实际上为一年)后,所讨论的单元格将发生更改。因此,我设置了一个子例程和断点,如下所示。
Private Sub Worksheet_Change(ByVal Target As Range)
End Sub
在VBA中,我需要在excel单元格中使用变量的两个选项:
如果单元格中有一个值
如果单元格中没有值,则为
我假设VBA会给我一个错误,如果我试图读取一个单元格,当里面什么都没有,所以不知道如何去做。
我想做这样的事
A=sheet1.cells(1,1).value
on error goto fail
fail:
A=0
' need to continue here, with A from the cell or set to 0
B=A+1
我有一个包含动态单元格范围名称列表(拾取的)名称管理器的excel表格。当我单击该列表中的任何单元格时,vba代码将在另一个单元格中显示活动单元格值。如果只有$d$2 = 1,我想运行这段vba代码。 VBA代码如下。 Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Not Application.Intersect(ActiveCell, [Picked]) Is Nothing Then
[ValPicked] = ActiveCell.Value
End If
End Su
我试图让excel中的某个标头单元格动态地更新其内容,这取决于我当前使用的行,但是地址有固定的列。因此,标题内容的列引用将始终是相同的,但是,我希望根据正在编辑的单元格(即活动单元格)更改行地址。
A B
1 (dynamic header cell)
2 John likes to eat apples
3 Mary never smokes
4 Peter tries too hard to be cool
5 David
我想用VBA编写,以便将公式写入依赖于其他动态单元格的单元格。
Dim cell1, cell2 as Range
set cell1 = Range("A1")
set cell2 = Range("A2")
‘我无法对A1和A2进行硬编码,因为单元格稍后将通过递增行进行更改
‘我想使用引用在B1 =(1+cell1)*(1+cell2)中显示,但当我在excel上看到它时,它会显示为=(1+A1)*(1+A2)
对于B2,它将是=(1+A2)*(1+A3)
如何在VBA中实现这一点?
我正试图用十进制数将单位从ug/Kg改为mg/Kg。为此,我使用一个函数来传递单元与原始单元(ug/Kg),并返回修改后的单元(mg/Kg)。这个问题一直试图保持同样数量的重要数字。我已经知道如何计算sig无花果,但我在修改单元格成为动态数字的正确数目时遇到了困难。我在网上看到的示例看起来类似于这个范围(A1).NumberFormat ="0.000“,但是这引用了单元格A1,我需要它来影响我试图返回的单元格。
下面的代码是我想要做的事情的一个例子,如果有人能帮忙的话,我会很感激的。
Function ToMg(rng As Range)
Dim OrigNumb As Doubl
我正在尝试将电子表格自己的文件名包含在动态创建的电子邮件正文中,其中包括一个VBA模块(?)职能:
=HYPERLINK("mailto:"&"address"&"?subject="&B7&"&body="&B7&FullName(); "E-Mail")
功能是
Function FullName() As String
FullName = ThisWorkbook.FullName()
End Function
在文档的“模块”中(我对VBA:
我有一组VBA代码,可以复制Sheet2中的单元格"AC14“并将其作为值粘贴到Sheet6中的单元格"Q4”中。当Sheet6中的单元格"Q4“的值发生变化时,我有另一组代码可以在Sheet6中应用过滤器,这让我很高兴。代码虽然不完美,但在一定程度上是有效的。下面是我复制和粘贴部分的代码。 Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Not Intersect(Range("AC14"), Target) Is Nothing Then
Range("AC1
我使用VBA来捕获单元格中的日期输入。我遇到的问题是,如果单元格为空,则VBA将其读取为12:00 AM,因此我在VBA中的ISDATE()函数将其视为日期,但代码会出现故障,因为它不是实际日期。哪些VBA语法可以自动检查以验证单元格包含日期?
这是我当前的语法
Sub IsDate()
Dim d1 As Date
d1 = CDate(Range("A1").Value)
If IsEmpty(Range("A1")) = False Then
If IsDate(d1) = True Then
'Continue
End
我试图创建一个UDF来替换COUNTIFS函数中使用的间接函数,以允许动态范围。
目标:
当前:
=countifs(indirect([cell reference to named range],[criteria1]...)
我正在努力实现:
=countifs(INDIRECTVBA([cell reference to named range],[criteria1...)
这个函数现在返回#值。
这是我的VBA:
Public Function INDIRECTVBA(ref_text As String)
INDIRECTVBA = Range(ref_text)
En
我正在尝试使用VBA查找单元格位置的值,我已经搜索了google和所有的stackoverflow,然后才问这个问题,因为我似乎不能让它工作。
下面是我尝试使用的代码,请注意,预算代码引用了包含第一列代码之一的单元格,而mo引用了包含数字(1-12)或包含短代码(ytd,1qtr,2qtr,3qtr)的单元格。例如,我想拉取2月份的CAD-NS (2),我应该得到5666.40。
Function eBudgetl(budgetcode As String, mo As String)
eBudgetl = Application.WorksheetFunction.Index(Range(&
嗨,我有一个在单元格中显示值的公式,但是我不能在VBA代码中将该单元格的值声明为字符串,因为它不是“真实的”值,而是基于公式的动态值。我将如何使用该值作为字符串?有没有办法通过VBA将公式给出的结果转换为字符串?
这是单元格I1:=IFERROR(VLOOKUP(J3,REVIEWERS!A:C, 3, 0),"")中的公式。
我试图用以下代码将I1中的值声明为string:
Public list As Worksheet
Public bsawt as worksheet
Sub BSAW_Export()
Dim ReviewerID As String
Set