Range.copyとrange.pasteを使用してグラフを作成すると、貼り付け範囲が選択されたままになり、数行後にグラフを作成すると、選択範囲がプロットの最初の系列として使用されます。シリーズを削除できますが、これを行うよりエレガントな方法はありますか?私は試した
Set selection = nothing
ただし、選択を設定することはできません。 selection.clearも試してみましたが、選択された最後のセルがクリアされ、プロットに余分なシリーズが追加されました。
Cells(1,1).Select
セルA1に移動し、既存の選択をキャンセルします。
Application.CutCopyMode = False
任意のセルを選択し、cutcopymodeをオフにします。
Range("A1").Select
Application.CutCopyMode = False
使うだけ
SendKeys "{ESC}"
これにより、選択がキャンセルされます。
問題を解決するNOTHINGを選択する方法があります。
ExcelのSELECT NOTHINGが必要な場合:
MYDOC.Shapes("Ready").visible=True
MYDOC.Shapes("Ready").Select
MYDOC.Shapes("Ready").visible=False
これにより、選択が非表示になり、ウィンドウでまだ何も選択されていないPLUS:シートの左上に「準備完了」という単語が表示されます。
最後にこのコードを使用するだけです。 (Falseを使用しないでください)
Application.CutCopyMode = True
これができるとは思いません。以下は、Chip Pearsonのサイトから修正なしでコピーされたコードです: http://www.cpearson.com/Excel/UnSelect.aspx 。
UnSelectActiveCell
この手順は、選択からアクティブセルを削除します。
Sub UnSelectActiveCell()
Dim R As Range
Dim RR As Range
For Each R In Selection.Cells
If StrComp(R.Address, ActiveCell.Address, vbBinaryCompare) <> 0 Then
If RR Is Nothing Then
Set RR = R
Else
Set RR = Application.Union(RR, R)
End If
End If
Next R
If Not RR Is Nothing Then
RR.Select
End If
End Sub
UnSelectCurrentArea
この手順は、アクティブセルを含む領域を選択から削除します。
Sub UnSelectCurrentArea()
Dim Area As Range
Dim RR As Range
For Each Area In Selection.Areas
If Application.Intersect(Area, ActiveCell) Is Nothing Then
If RR Is Nothing Then
Set RR = Area
Else
Set RR = Application.Union(RR, Area)
End If
End If
Next Area
If Not RR Is Nothing Then
RR.Select
End If
End Sub
Excel 2007では、selectとCutCopyModeプロパティを使用して、すべての選択をリセットできます。私のユースケースでうまくいきました。
Application.CutCopyMode = xlCopy
ActiveSheet.Range("A" & lngRow).Select
よろしくMadhur
この問題はExcel 2013で発生しました。「フリーズペイン」が設定されていたため、問題が発生しました。固定ペインを削除すると、問題は解決しました。
Sub MyFunc()
Range("B6").Select
Selection.Locked = True
End Sub
Application.CutCopyMode
または.Select
を使用した多くの回答のどれも、私にとってはうまくいきませんでした。
しかし、私はここに掲載されていない解決策を見つけました。
StackExchange SuperUserから: Excel VBA「選択解除」が必要
「何も選択しない」場合は、VBAを使用して、コード実行の最後にシートを保護できます。これにより、何も選択されなくなります。これをマクロに追加するか、VBAに直接配置することができます。
Sub NoSelect()
With ActiveSheet
.EnableSelection = xlNoSelection
.Protect
End With
End Sub
シートの保護が解除されるとすぐに、カーソルがセルをアクティブにします。
これが同じ問題を抱えている人を助けることを願っています!
Selection(1, 1).Select
は、現在の選択の左上のセルのみを選択します。
ボタンを使用して貼り付け手順を呼び出す場合、
操作後にボタンをアクティブにしてみてください。これにより、選択が正常にクリアされます
なしで
HTH
Sub BtnCopypasta_Worksheet_Click()
range.copy
range.paste
BtnCopypasta.Activate
End sub
HTH
Application.ScreenUpdating = False
を設定し、ビューからセルを選択して、.ScreenUpdating
をtrueに設定できます。これにより、少なくとも現在のビューで選択したセルが表示されなくなります。
すでに選択されている範囲内のセルを選択した場合動作しません。ただし、元の選択範囲外の範囲を選択すると、元の選択範囲はクリアされます。
'*元の選択*' ActiveSheet.range( "A1:K10")。Select
'*新規選択*' Activesheet.Range( "L1")。Select
'* Then *' Activesheet.Range( "A1")。Select
すべての提案を試してみましたが、運はありませんでしたが、ここであなたの選択範囲(AAA1000000など)からセルを選択してからA1をもう一度選択してください
Range( "AAA1000000")。Activate
Range( "A1")。Activate
男