首页 > 解决方案 > 将值从单元格转换为 VBA

问题描述

我在使用 Range.Value/Value2/Text 时遇到问题

例如:单元格 A1 包含 IF 公式,结果 = 第 2 周

在我的 VBA 中,我想根据包含在 A1 中的周进行循环

所以我的代码将是:

Dim a as Integer
If (Range("A1").Text = "Week 2") Then
    a = 4
End if

使用 .text 或 .value 或 .value2 不会返回任何内容。所以变量 a 等于零

知道如何取这个值吗?

标签: excelvba

解决方案


正如@Brotato 所说,明确定义范围(例如):

Option Explicit

Public Sub CheckA1()

    If ActiveWorkbook.Worksheets("Sheet1").Range("A1").Value = "Week 2" Then
        MsgBox "It is Week 2"
    End If

End Sub

这将导致...

屏幕1


推荐阅读