[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]
『選択したセル以外には、エラーのメッセージをだす。』(ひろこ)
見よう見まねで下記の様につくってみました。
やりたいことは、A1:A2をコピーして、B1〜B10セルのどこかのセルを選択し、選択したセルから2行にペーストしてその下のセルを選択すると言う事です。
思い通りにはなりましたが、それ以外のセルを選択実行した場合に、『B1〜B10のセルは選択できません。』のようなメッセージを出すようにするにはどうすれば良いでしょうか?
Dim myRange
myRange = ActiveCell.Address
Range("A1:A2").Copy
ActiveSheet.Paste
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Application.CutCopyMode = False
Range(myRange).Select
ActiveCell.Offset(2, 0).Select
御伝授お願いします。m(__)m
< 使用 Excel:Excel2013、使用 OS:Windows8 >
Sub test()
If Intersect(Selection, Range("B1:B10")) Is Nothing Then
MsgBox "B1〜B10のセルは選択できません。"
Exit Sub
ElseIf Selection.Count > 1 Then
MsgBox "複数セルは選択できません。"
Exit Sub
End If
Range("A1:A2").Copy Selection
Selection.Offset(2, 0).Select
End Sub
こんな事でしょうか?
(ウッシ) 2015/08/24(月) 08:43
素晴らしい!問題解決しました。
ありがとうございます。
(ひろこ) 2015/08/24(月) 09:00
別のセルもコピーして同時に貼り付けをしなくてはならなくなりました。
下記の方法で解決は出来たのですが、短くする方法はないでしょうか?
Sub test()
If Intersect(Selection, Range("B1:B10")) Is Nothing Then
MsgBox "B1〜B10のセルは選択できません。"
Exit Sub
ElseIf Selection.Count > 1 Then
MsgBox "複数セルは選択できません。"
Exit Sub
End If
Range("A1:A2").Copy Selection
Selection.Offset(2, 0).Select
Range("A4").Copy Selection
Selection.Offset(1, 0).Select
End Sub
(ひろこ) 2015/08/27(木) 11:04
こうですか?
Sub test()
If Intersect(Selection, Range("B1:B10")) Is Nothing Then
MsgBox "B1〜B10のセルは選択できません。"
Exit Sub
ElseIf Selection.Count > 1 Then
MsgBox "複数セルは選択できません。"
Exit Sub
End If
Range("A1:A2").Copy Selection
Range("A4").Copy Selection.Offset(2, 0)
Selection.Offset(3, 0).Select
End Sub
(ウッシ) 2015/08/27(木) 11:09
ウッシさん、助かりました。
ありがとうございます。m(__)m
(ひろこ) 2015/08/27(木) 11:33
[ 一覧(最新更新順) ]
YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki.
Modified by kazu.