advanced help
per page, with , order by , clip by
Results of 1 - 1 of about 85 for VBA 強制終了 (0.004 sec.)
vba (14726), 強制終了 (237)
[[20220614151536]]
#score: 16176
@digest: 579dc7c02f6d48e5b540ea4b9d4018fb
@id: 91544
@mdate: 2022-06-17T01:49:27Z
@size: 5716
@type: text/plain
#keywords: cellrange (120176), 理範 (33156), pasterange (29317), selectrange (28711), 択on (14761), 定", (10439), ーモ (5983), ド解 (4532), ジー (2659), inputbox (2319), い", (2139), 2022 (1911), をド (1747), ラッ (1746), モー (1666), ー元 (1592), て選 (1528), ドラ (1375), ッグ (1290), 解除 (1225), error (1181), コピ (1172), resume (1158), 処理 (1147), 範囲 (1145), 正常 (1129), 火) (1120), グし (1063), イブ (1046), 指定 (1028), ピー (1007), 選択 (1002)
『別シートのコピペ方法を教えてください』(あるす君)
https://dolphinpg.net/program/excel-vba-selectrange/?unapproved=1172&moderation-hash=0df915adb30cdae047ffe48529b417d3#comment-1172 上記のサイトでInputボックスでセル範囲を指定させることができるのですが、別シートのセル範囲を指定しても正常に動きません。 どうしたらいいでしょうか。 < 使用 Excel:Excel2019、使用 OS:Windows10 > ---- >正常に動きません。 どんな動作が「正常」なのですか? (わからん) 2022/06/14(火) 15:41 ---- Selectすらできません。 コピーして貼り付けしたいです。 (あるす君) 2022/06/14(火) 15:57 ---- >Selectすらできません。 Selectする必要があるとは思えませんが、どうしても選択したいなら下記を変更すればいいです。 cellRange.Select ↓ cellRange.Parent.Select cellRange.Select (わからん) 2022/06/14(火) 16:26 ---- ありがとうございます! (あるす君) 2022/06/14(火) 16:36 ---- >コピーして貼り付けしたいです。 cellRange.Copy で良くないですか ? 後は、コピペしたいシートでペースト !! (ROM) 2022/06/14(火) 16:58 ---- 上記のサイトのInputボックスコード Sub selectRange() Dim cellRange As Range On Error Resume Next Set cellRange = Application.InputBox("処理範囲をドラッグして選択してください", "処理範囲の指定", Type:=8) If cellRange Is Nothing Then Exit Sub cellRange.Select End Sub シートに関係なく範囲選択できましたけど。 >コピーして貼り付けしたいです。 このコードでコピーして貼り付けしたいと考えているんじゃないですよね。。 (???) 2022/06/14(火) 17:54 ---- >Set cellRange = Application.InputBox("処理範囲をドラッグして選択してください", "処理範囲の指定", Type:=8) これで、コピーモードは解除されますね。 尚、2007では選択できませんでした。 インプットボックス用のエラートラップを外すとエラーになります。 普通は、直後に On Error goto 0 でエラートラップ解除ですか。 (ファイブジー) 2022/06/14(火) 19:41 ---- コピー元も貼り付け先も可変なら、手作業で実行したほうが早い気がしますが、 一連のマクロの中という建付けなんでしょうか。 現在困っているのが、貼り付け先の指定ということなのか、明確に書いたほうがいいですよ。 皆さんのご指摘も参考にさせてもらうと、例えば、こんな書き方ができると思います。 (キャンセルを想定することが必須なのかも不明ですが、それがなければもっと簡単になりますね。) Sub selectRange() Dim cellRange As Variant Dim pasteRange As Variant 'コピー元の選択 On Error Resume Next Set cellRange = Application.InputBox("処理範囲をドラッグして選択してください", _ "処理範囲の指定", Type:=8) On Error GoTo 0 If TypeName(cellRange) <> "Range" Then Exit Sub ' 貼り付け先の選択 On Error Resume Next Set pasteRange = Application.InputBox("処理範囲をドラッグして選択してください", _ "処理範囲の指定", Type:=8) On Error GoTo 0 If TypeName(pasteRange) <> "Range" Then Exit Sub 'コピーペイスト cellRange.Copy pasteRange Application.Goto pasteRange End Sub (γ) 2022/06/16(木) 17:26 ---- RefEditを使うとか? 2つとか複数選べるようになる。 最近のエクセルにあるのか解りません。 バグがあるといわれつつ、いつの間にか無くなってたり? 注意事項 http://addinbox.sakura.ne.jp/Excel_Tips08.htm#S2 (ファイブジー) 2022/06/16(木) 23:24 ---- 説明が前後しますが、こういうことでしょう。 ・Sheet1がアクティブな状態で、マクロを実行し、 ・Sheet2のセルを選択したとします。 ・マクロが終了すると、 Sheet1がアクティブになっている このことをもって、「動作していない」という判断になったのでしょう。 マクロをスタートさせたときのシート選択に戻る、 というのを仕様にしているものと思います。 こうしたSelectすることを目標にするようなコードはミスリードするのかもしれません。 通常はSelectなどということはしませんから。 ただ注目すべきは、cellRangeが正しく設定されていることです。 これは、下記のコードで確認できます。 Sheet2のセルがセットされることが分かります。イミディエイトウインドウを見て下さい。 Sub selectRange() Dim cellRange As Range On Error Resume Next Set cellRange = Application.InputBox("処理範囲をドラッグして選択してください", "処理範囲の指定", Type:=8) If cellRange Is Nothing Then Exit Sub Debug.Print cellRange.Address(external:=True) '■この部分を追加 cellRange.Select End Sub コードに追加する処理のなかで、そのcellRangeを利用できます。 例えば、私が提示したようなコードが一例です。 ------------- 【余談】 RefEditですか。ありましたねえ、そう言えば。 強制終了したり、参照設定のなかでエラーを起こす代表格として悪名高いものでしたね。 今でも生き延びているのでしょうか。存在すら忘れていました。 その他のコントロールには残っているようです。 (γ) 2022/06/17(金) 07:34 ---- >これで、コピーモードは解除されますね。 範囲選択するのであってコピーモード解除じゃありません。 点滅している枠線を取り除くことを言います。 コピーモード解除は Application.CutCopyMode = True です。 (???) 2022/06/17(金) 09:43 ---- (ROM) 2022/06/14(火) 16:58 のお手伝い Sub selectRange() Dim cellRange As Range On Error Resume Next Set cellRange = Application.InputBox("処理範囲をドラッグして選択してください", "処理範囲の指定", Type:=8) If cellRange Is Nothing Then Exit Sub cellRange.Copy '(ROM) 2022/06/14(火) 16:58 End Sub (???) 2022/06/17(金) 10:22 ---- ああ、すでにコピー状態であって、貼り付け先を指定するもの ではなかったのか? >コピーして貼り付けしたいです。 これの意味がよく解らなかった。 コピー元を指定させて、コピー先を指定って 普通(手作業)のコピペと変わらないのでは! (ファイブジー) 2022/06/17(金) 10:37 ...
http://www.excel.studio-kazu.jp/wiki/kazuwiki/202206/20220614151536.txt - [detail] - similar
PREV NEXT
Powered by Hyper Estraier 1.4.13, with 97023 documents and 608156 words.

訪問者:カウンタValid HTML 4.01 Transitional