
No.7ベストアンサー
- 回答日時:
▲こちらのTipsにAPIを利用する方法が書かれていますので、参考にしてみてください。
[E03M121 切り取り又はコピーされたセル範囲を取得する]
取得するタイミングが、『コピー後、次のセル範囲を選択した時』で良ければ
Sheet の SelectionChange イベントが使えそうです。
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Static ad As String
If Application.CutCopyMode Then
MsgBox ad
Else
ad = Target.Address(0, 0, external:=True)
End If
End Sub
でも
>通常は不要ですが、データ貼り付けを行った際に、データの内容をチェックし、
>別のセルに値をセットするため、セルのコピー範囲の情報が解除され、
>連続して貼り付けできない状態になっております。
...という事であれば、作業用シートにでも一旦コピーし、
そこから再コピーするような仕様でも良いような気もしますね。
回答ありがとうございました。
また、お礼が遅くなり申し訳ございません。
丁寧なアドバイスありがとうございます。
頂いた内容でいろいろやってみてなんとかいけました。
No.6
- 回答日時:
回答ありがとうございました。
また、お礼が遅くなり申し訳ございません。
毎回コピー範囲が変わるのですが、リンク先のサイトは
参考になりました。
いろいろ試させていただきます。
No.4
- 回答日時:
コピーのイベントってないんですね。
コピーするためにはまず範囲をSelectしなくてはならないでしょうからSelectionのアドレスを取得してみたらどうでしょう?
Dim x
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
x = Selection.Address
End Sub
Sub aaaa()
MsgBox x
End Sub
回答ありがとうございます。
確かにいただいた内容ではアドレスの取得ができるのですが、
それがコピーされたセルなのかどうかが判別できません。
やはり難しいのでしょうか?
No.3
- 回答日時:
内容を書いてる間に質問者より補足が有りましたけど、
具体的に何の情報を取得したいのですか?
又は、何を(どんな事)をしたいのですか?
この回答への補足
仮にA1:Z10までデータが入っていたとして、
B1:B5までを選択してコピー、
C3:C8に貼り付け
を行う際に、「B1:B5」という情報が取得したいです。
通常は不要ですが、データ貼り付けを行った際に、データの内容をチェックし、
別のセルに値をセットするため、セルのコピー範囲の情報が解除され、
連続して貼り付けできない状態になっております。
ご迷惑おかけし申し訳ございませんがよろしくお願いいたします。
No.2
- 回答日時:
>とあるセルをコピーし
何処までデータが入力されているか分からないけど、とにかくデータが入力されてる範囲を取得したい。と言う事ですか?
セルA1から連続してデータが入っている範囲を選択させるだけなら
Range("A1").Select
Range(Selection, Selection.End(xlToRight)).Select
Range(Selection, Selection.End(xlDown)).Select
で、いいと思います。
後は、煮るなり焼くなり
回答ありがとうございます。
私の質問の仕方が悪かったのですが、
望んでいたこととは違っておりました。
ご回答いただいた内容は別件で使用させていただきます。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
-
VBAでセルがコピーされているか判定したい
Excel(エクセル)
-
エクセル:マクロ「Application.CutCopyMode = False」って?
Excel(エクセル)
-
CutCopyMode範囲の取得方法について。
Word(ワード)
-
-
4
すでにコピーした情報を貼り付けたらイベントを発生
PowerPoint(パワーポイント)
-
5
エクセルVBAでセル範囲のデータをクリップボードに
その他(Microsoft Office)
-
6
VBAでブックを非表示で開いて処理して閉じる方法
Excel(エクセル)
-
7
実行時エラー'1004': WorkSheetクラスのVisibleプロパティを設定できません
Visual Basic(VBA)
-
8
クリップボードの内容を変数に取り込みたい(EXCEL VBA)
Visual Basic(VBA)
-
9
VBAで、貼り付け禁止命令を実現したい(エクセル)
Visual Basic(VBA)
-
10
エクセルVBA/イベント発生でコピペ不能はなぜ?
Excel(エクセル)
-
11
エクセルのセル内の「数式」の一括変更をVBAなどで行いたいです!
Visual Basic(VBA)
-
12
Excel VBAでのWorksheet_Changeが動作しない原因
Excel(エクセル)
-
13
Application.ScreenUpdating = Falseが効きません
Visual Basic(VBA)
-
14
VBA 変数名に変数を使用したい。
Visual Basic(VBA)
-
15
エクセルVBA コードが同じでもファイルによって処理速度が大きく変わるのはなぜ
Visual Basic(VBA)
-
16
Changeイベントで複数セルへの貼り付けおよび値削除時に1個目のセルのみエラーになる
Visual Basic(VBA)
-
17
マクロ自動コピペ 貼り付ける場所が変わる場合
その他(Microsoft Office)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
エクセル:マクロ「Application...
-
エクセルのアポストロフィを一...
-
エクセル 別シートへのコピー...
-
エクセルで隣接していない複数...
-
MacBookのnumbersでの表作成に...
-
エクセルで勝手に「折り返して...
-
エクセルで値だけコピーして背...
-
EXCELで「行と列を入れ替える」...
-
表のコピー
-
Excelで膨大なデータを処理する...
-
エクセル コピーしたデータを1...
-
エクセルオートフィルで書式を...
-
サイズの異なる結合セル間での...
-
Excel 結合されたセルへの貼り...
-
Excel2013vba高速化(行の高さコ...
-
エクセル 飛び飛びのセルの値...
-
excelで、あるセルの範囲をコピ...
-
【マクロ】オートフィルターの...
-
エクセルのコピペでクリップボ...
-
「選択範囲を解除してアクティ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
【マクロ】オートフィルターの...
-
エクセル:マクロ「Application...
-
エクセルのアポストロフィを一...
-
エクセルで隣接していない複数...
-
メールソフト「サンダーバード...
-
Excel 行の連続データを列に参...
-
エクセルの2ページ目の作り方
-
エクセルで勝手に「折り返して...
-
Excelに、ダブルクォーテーショ...
-
エクセル 別シートへのコピー...
-
「選択範囲を解除してアクティ...
-
エクセルで、選択範囲の数値全...
-
エクセルで値だけコピーして背...
-
エクセルでの行数・列数を指定...
-
Excelでコピーした行の挿入を繰...
-
エクセルオートフィルで書式を...
-
エクセル・数値が変化したらカ...
-
エクセル コピーしたデータを1...
-
EXCELのオートフィルの設定を変...
-
エクセルVBA/イベント発生でコ...
おすすめ情報