Excel VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


35152 / 76732 ←次へ | 前へ→

【46782】Re:範囲指定後マクロを走らす
発言  かみちゃん  - 07/2/15(木) 7:08 -

引用なし
パスワード
   こんにちは。かみちゃん です。

横から失礼します。

>回答有難う御座いました。

[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

1 hits

【46773】範囲指定後マクロを走らす 杉下 誠 07/2/14(水) 21:08 お礼
【46782】Re:範囲指定後マクロを走らす かみちゃん 07/2/15(木) 7:08 発言
【46787】Re:範囲指定後マクロを走らす 杉下 誠 07/2/15(木) 13:06 お礼

35152 / 76732 ←次へ | 前へ→
ページ:  ┃  記事番号:
2610219
(SS)C-BOARD v3.8 is Free