在Excel VBA中获取单元格值(分步示例)

使用Excel VBA获取单元格值

单元格是一个单独的单元格,也是范围的一部分,从技术上讲,有两种与VBA中的单元格进行交互的方法,它们是范围方法和单元格方法,范围方法的使用类似于range(“ A2”) .value将为我们提供A2单元格的值,或者我们可以将cell方法用作cells(2,1).value,这也将为我们提供A2单元格的值。

无论是优秀工作还是VBA工作,我们都需要处理一个或多个单元,因为所有数据都将存储在单元中,所以所有这些归结为我们对VBA中单元的了解程度。因此,如果单元格是VBA的关键部分,那么一定要很好地理解它们,如果您是VBA单元的入门者,那么本文将指导您详细了解如何在Excel VBA中获取单元格值。

首先,我们可以两种方式引用或使用VBA中的单元格,即使用CELLS属性和RANGE对象。为什么CELLS是一个属性,为什么RANGE是一个对象则是一个不同的类比,在本文的后面,我们将介绍这一点。

在Excel VBA中获取单元格值的示例

下面是在Excel VBA中获取单元格值的示例。

您可以在此处下载此VBA获取单元格值Excel模板– VBA获取单元格值Excel模板

Example#1 –使用RANGE或CELLS属性

例如,在单元格A1中,我们的值为“印度”。

要引用此单元格,我们可以使用CELLS属性或RANGE对象,下面将详细介绍它们。

使用范围属性

首先,启动宏过程。

代码:

 子Get_Cell_Value()结束子 

现在打开RANGE对象。

代码:

 子Get_Cell_Value()范围(结束子 

该对象的第一个参数是“ Cell1”,即我们所指的是哪个单元格。在这种情况下,它是单元格A1,因此我们需要为RANGE对象提供双引号的单元格地址。

代码:

 Sub Get_Cell_Value()Range(“ A1”)End Sub 

由于只有一个单元格与其他参数无关,因此请关闭方括号并加一个点以查看“智能感知”列表。

如您在上方放置点的那一刻所见,我们可以看到所有可用的智能感知属性列表和范围对象的方法。

由于我们正在选择单元格,因此需要从智能感知列表中选择“选择”方法。

代码:

 Sub Get_Cell_Value()Range(“ A1”)。选择End Sub 

现在选择除A1以外的单元格并运行代码。

运行代码后,选择哪个单元格都没有关系,它选择了提到的单元格即A1单元格。

使用单元格属性

同样,我们现在使用CELLS属性。

代码:

 Sub Get_Cell_Value()Range(“ A1”)。Select Cells(End Sub 

这与RANGE对象不同,在RANGE对象中,我们可以直接提供单元地址,但使用此CELLS属性,我们不能那样做。

此属性的第一个参数是“行索引”,即我们要引用的行。由于我们选择的是单元格A1,因此我们指的是第一行,因此请提及1。

下一个参数是“列索引”,即我们指的是哪一列。 A1单元格列是第一列,因此输入1。

我们的代码读取CELLS(1,1),即第一行第一列= A1。

现在加一个点,看看是否能看到智能感知列表。

使用CELLS属性,我们看不到任何IntelliSense列表,因此我们需要绝对确定自己在写什么。输入“选择”作为方法。

代码:

 Sub Get_Cell_Value()Range(“ A1”)。选择单元格(1,1)。选择End Sub 

这还将选择单元格A1。

Example#2 –在Excel VBA中从单元格获取值

选择是我们学到的第一件事,现在我们将看到如何从单元中获取价值。在选择单元格之前,我们需要定义变量以存储单元格中的值。

代码:

 Sub Get_Cell_Value1()昏暗CellValue作为字符串结尾Sub 

现在,通过使用RANGE对象或CELLS属性来提及单元地址。因为您是初学者,所以仅使用RANGE对象是因为有了RANGE对象,我们才能看到智能感知列表。

对于已定义的变量,请添加等号并提及单元地址。

代码:

 Sub Get_Cell_Value1()昏暗CellValue作为字符串CellValue = Range(“ A1”)End Sub 

再次加一个点以查看智能感知列表。

从vba intellisense列表中选择“值”属性,以从提到的单元格中获取值。

代码:

 Sub Get_Cell_Value1()昏暗CellValue作为字符串CellValue = Range(“ A1”)。Value End Sub 

现在,变量“ CellValue”保存单元格A1中的值。在VBA的消息框中显示此变量值。

代码:

 Sub Get_Cell_Value1()昏暗的CellValue作为字符串CellValue = Range(“ A1”)。Value MsgBox CellValue End Sub 

好的,运行代码,并在消息框中查看结果。

由于单元格A1中的值为“ INDIA”,因此消息框中也出现了相同的内容。这样,通过单元格的VBA值,我们可以获得单元格的值。

Example#3 –从一个单元格到另一个单元格获取价值

我们知道如何使用vba从单元中获取价值,现在的问题是如何向单元中插入价值。让我们仅以相同的示例为例,对于单元格A1,我们需要插入“ INDIA”的值,这可以通过以下代码完成。

代码:

 Sub Get_Cell_Value2()Range(“ A1”)。Value =“ INDIA”结束Sub 

这会将“ INDIA”的值插入到单元格A1中,类似地,从一个单元格到另一个单元格获取值,我们可以编写以下代码。

代码:

 Sub Get_Cell_Value2()Range(“ A5”)。Value = Range(“ A1”)。Value End Sub 

让我向您解释代码。

“对于单元格A5,我们需要来自单元格A1值的值”,这就是所有这些代码所说明的内容。因此,这将使用VBA代码从单元格A1到A5获得值。

要记住的事情

  • 向单元格插入值并从单元格获取值需要使用VBA的“ VALUE”属性。
  • 使用CELLS属性,我们只能选择一个单元格,但是使用RANGE对象,我们可以选择多个单元格。