这是关于excel中的宏。
而组合键按下(即宏被触发),我需要做一些格式更改的列1至10的行,有ActiveCell。
现在我选择了整行
ActiveCell.EntireRow.Select
但是,我只需要选择第1到第10行。我觉得应该是这样的
ActiveCell.Range(1, 10).Select
但这不起作用。
澄清一下,我读过关于
ActiveCell.Offset(5, -4).Select
但这在我的情况下不起作用。ActiveCell可以是行中的任何一列,因此硬编码的偏移量不会有帮助。
所以,excel大师那里,我希望这是一个快速的东西,只是不知怎么的,我找不到答案。请帮助。
如果总是列1到10(即A到J),那么这应该可以工作:
Range("A" & ActiveCell.Row & ":J" & ActiveCell.Row)
例如,如果活动单元格是M14
,那么这将选择范围A14:J14
。然后你可以按自己喜欢的方式格式化。
希望能有所帮助
好的。我就是这么做的,而且很有效。
ActiveSheet.Range(Cells(ActiveCell.Row, 1), Cells(ActiveCell.Row, 10)).Select
在我看来,这是一种粗俗的方式。如果有更好的信息,请回复。在我们找到更好的答案之前,我想这是对那些在我之后来寻找答案的人最好的答案。
可以了
Range("A" & ActiveCell.Row).Resize(1,10).select
如适用。花了很多时间去寻找,需要一个更可编程-自动化的答案,结果-在一行上工作。
Dim N7 As String: N7 = RANGE("N7") 'workcell N7 shows eg: A:J
Intersect(Rows(ActiveCell.row), RANGE(N7).Columns).Select 'YES ANSWER
'other:
If application.Max(Intersect(Rows(ActiveCell.row), RANGE(N7).Columns)) > 0 Then
MsgBox "YES" & Space(10), vbQuestion ', "title": end if & vbCr &
Else: MsgBox "NO" & Space(10), vbQuestion: End If ', "title": end if & vbCr &
'Cells(ActiveCell.row, J6).OFFSET(, 1).RESIZE(, 6).Select 'YES: offset works on immediate cols for 1 row
'Cells(ActiveCell.row, J6).RESIZE(, 5).Select 'yes on 4 immediate cols for 1 row (row, col)
'Cells(ActiveCell.row, B5).select
workcell N7具有:=替代(替代(细胞("地址",A7美元 ),"$","), 行(),"),":"和替代(替代(细胞("地址",J7美元 ),"$","), 行()"、")