[英]Excel VBA current range cell selection issue
我在下面有這段代碼,其中我 select 范圍然后偏移以獲得 base_red 范圍下一個單元格的句柄。 運行下一行 pastespecial 時,它會將數據復制到“mon”范圍,但 cursor 選擇也會移動到“mon”范圍。
我不希望選擇僅保留在舊位置,而無法弄清楚如何僅在舊位置停止選擇。 我需要這個,因為我必須做更多的偏移並將值粘貼到新位置。
If count1 = 1 Then
ws.Range("base_red").Select
End If
ActiveCell.Offset(1, 0).Select
ActiveCell.Copy
ws.Range("mon").PasteSpecial
您可能不想使用 select。以下代碼將一個范圍復制到另一個范圍。 我從你的例子中暗示你想確保你只復制和粘貼一個單元格。 如果不是這種情況,請從代碼中刪除“.Cells(1,1)”的兩個實例。
Public Sub Temp()
Dim ws As Worksheet
Set ws = ActiveSheet
count1 = 1
If count1 = 1 Then
ws.Range("mon").Cells(1, 1) = ws.Range("base_red").Offset(1, 0).Cells(1, 1)
End If
End Sub
這是對代碼進行最少更改的另一種方法。
Public Sub Temp()
Dim rng As Range
Dim ws As Worksheet
Set ws = ActiveSheet
count1 = 1
If count1 = 1 Then
ws.Range("base_red").Select
End If
ActiveCell.Offset(1, 0).Select
ActiveCell.Copy
' save the location of the active cell to rng.
Set rng = ActiveCell
ws.Range("mon").PasteSpecial
' return to the previous active cell
rng.Select
End Sub
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.