gpt4 book ai didi

excel - 使用vba获取具有特定文本的单元格的列号

转载 作者:行者123 更新时间:2023-12-03 00:32:00 28 4
gpt4 key购买 nike

screeshot of the excel您好,我需要获取文本为 ACTION 的单元格列。

我当前的代码如下。

Option Explicit
Private Sub Worksheet_Change(ByVal Target As Range)
Dim rngDV As Range
Dim oldVal As String
Dim newVal As String
Dim actionColName As String
If Target.Count > 1 Then GoTo exitHandler

On Error Resume Next
Set rngDV = Cells.SpecialCells(xlCellTypeAllValidation)
On Error GoTo exitHandler

If rngDV Is Nothing Then GoTo exitHandler

If Intersect(Target, rngDV) Is Nothing Then
'do nothing
Else
Application.EnableEvents = False
newVal = Target.Value
Application.Undo
oldVal = Target.Value
Target.Value = newVal
If Target.Column = 3 Then
If oldVal = "" Then
'do nothing
Else
If newVal = "" Then
'do nothing
Else
Target.Value = oldVal _
& "+ " & newVal
End If
End If
End If
End If

exitHandler:
Application.EnableEvents = True
End Sub

上面的代码中有一个条件如下 如果 Target.Column = 3 则

我不想用 3 对值进行硬编码,而是想将此逻辑应用于整个列,该列在该列的一个单元格中包含值 ACTION

最佳答案

使用Find来确定包含操作的(第一)列

Sub GetAction()
Dim rng1 As Range
Set rng1 = ActiveSheet.UsedRange.Find("Action", , xlValues, xlWhole)
If Not rng1 Is Nothing Then
MsgBox "Found in column " & rng1.Column
Else
MsgBox "Not found", vbCritical
End If
End Sub

关于excel - 使用vba获取具有特定文本的单元格的列号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15457639/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com