替换列的值

替换列的值

我的问题是如何根据单元格的标题替换单元格的值。

这是我的示例数据。我想用列标题中的日期替换所有“x”值。

样本数据原始

输出应该是这样的:

样本数据输出

我不知道如何为此创建宏。我想知道我是否可以在工作表本身中添加一个宏,这样它就会自动运行,而无需每次更改值时单击任何按钮。

答案1

我想用列标题中的日期替换所有“x”值。

Sub MyReplace()
Dim OneCell As Range
For Each OneCell In ActiveSheet.UsedRange
    If OneCell.Column > 1 And OneCell.Row > 1 Then
        If OneCell.Value = "x" Then
            OneCell.Value = OneCell.EntireColumn.Cells(1, 1).Value
        End If
    End If
Next
End Sub

每次改变值时都会自动运行,无需单击任何按钮。

Dim flag As Boolean

Private Sub Worksheet_Change(ByVal Target As Range)
Dim OneCell As Range
If flag Then Exit Sub
flag = True
For Each OneCell In Target
    If OneCell.Column > 1 And OneCell.Row > 1 Then
        If OneCell.Value = "x" Then
            OneCell.Value = OneCell.EntireColumn.Cells(1, 1).Value
        End If
    End If
Next
flag = False
End Sub

相关内容