|
こんにちは。かみちゃん です。
横から失礼します。
>回答有難う御座いました。
[46754]のことですね。
http://www.vbalab.net/vbaqa/c-board.cgi?cmd=one;no=46754;id=excel
(先頭4文字は、全角になっているので、半角にしてください。)
コメントに対するコメントであれば、上記の右上に「返信」というところがある
のでそれをクリックすると、そのコメントに対して、返信コメントを書くことが
でき、スレッドが分散されなくなります。
> 以上の内容に文を仕上げて頂けないでしょうか?
まず、提示されたコードは、B3:B6を選択した状態ですと、
B3:B6をコピーして、B3を先頭にして値貼り付け(「形式を選択して貼り付け」−
「値」)をしているのですが、その後に、B4、B5、B6の値を""に変えていませんか?
その点でなさりたいことと、コードがおかしいように思います。
また、B3:B6をコピーしてではなく、あらかじめコピーしてある範囲をB3:B6に
値貼り付けしたいということでしょうか?
さらに、B3:B6の選択をVBAでしたいということでしょうか?
以下のような感じでいかがでしょうか?
Sub Sample1()
Dim rngCopy As Range
Dim rngPaste As Range
If TypeOf Selection Is Range Then
Set rngCopy = Selection
On Error Resume Next
Set rngPaste = Application.InputBox("貼付先セル範囲を選択してください", , , , , , , 8)
On Error GoTo 0
If Not rngPaste Is Nothing Then
MsgBox rngPaste.Address
rngCopy.Copy
rngPaste.Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Else
MsgBox "セル範囲を選択しませんでした"
End If
Else
MsgBox "コピー元がセル範囲ではありません"
End If
End Sub
|
|