
以前に似たような質問をしましたが、勘違いで「解決済」としていたので再度質問いたします。
C列を非表示として以下のコードを実行すると、コピーモード(セルが点線で囲まれる)になりますが、Ctrl + V キー等で貼り付けると、文字が無く改行のみが貼り付けられます。
Cells(3, 3).Copy
非表示を解除すると問題なくコピーされるので、一旦解除してから → コピー → 再び非表示 というコードにしたのですが、再非表示するとコピーモードが解けてしまいます。
Range(Cells(3, 3), Cells(3, 3)).EntireColumn.Hidden = False’質問用にコードを作ったので、範囲についてRange(Cells(3, 3), Cells(3, 3))と元のコードに近いものを記載しました。 Cells(3, 3).Copy Range(Cells(3, 3), Cells(3, 3)).EntireColumn.Hidden = True
このプロシージャが終了してもコピーモードが継続し、非表示部分もそのままの状態で Ctrl + V で貼り付けできる状態にしたいのですが、良い方法はないでしょうか?
本来、.COPY でコピーした場合は、他のシートやセル等に張り付けする場合等が多いでしょうが、今回は、Ctrl + Vで、ブラウザの検索窓やメモ帳に張り付けることが目的です。
プロシージャ終了後のシートの非表示状態とCtrl + Vでの文字列の貼り付けが可能であれば、コピーモードが継続していなくとも構いません。
アドバイスいただきたく質問いたしました。
よろしくお願いします。
~以下追記部分です~
上記プロシージャですが、質問用で「標準モジュール」に入力したものでして、現在ご回答いただいた回答ですべて問題なく処理されました。(ありがとうございます!!)
今回の質問の元となった問題点なのですが、「クラスモジュール」に記載されたプロシージャで有り、こちらに同様の手法を用いると Ctrl + V では空欄の貼り付けになってしまい、これを解決したく追記で質問いたしました。
(最初の時点でモジュールの種類が問題ではないと思い記載しませんでした・・・。申し訳ありません。)
Private Sub tgtctrl_Click() Dim intRow As Long Dim URL As String Dim intcol As Long Dim i As Long MsgBox "コピーしました" i = tgtctrl.Tag intRow = tgtrange.Row intcol = 5 + 2 * i ECOL = 1 Do While Cells(2, ECOL) <> "" If InStr(Cells(2, ECOL), "URL") > 0 Then SCOL = ECOL End If ECOL = ECOL + 1 Loop SCOL = SCOL + 1 ECOL = ECOL - 1 Dim ws As Worksheet Set ws = ThisWorkbook.Worksheets("パスワード") ActiveSheet.Unprotect Dim x '変数宣言 x = Cells(intRow, intcol).Value '値のみ取得 With New DataObject .SetText x .PutInClipboard .GetFromClipboard'変数確認用 a = GetText'変数確認用 End With MsgBox a'変数確認用 ActiveSheet.Protect End Sub
フォームに配置された「コピーボタン」を押すとおこるイベントです。
1月13日時点でアドバイスいただいた方2名の方のコードを参考に作成しました。
一部確認用で配置したコード(3行)も有り、そのまま残しています。('変数確認用とコメント入れています。)
以下については確認しています。
- Microsoft Forms 2.0 Object Library の参照設定はされていました。
- ステップインでCells(intRow, intcol)の文字列は問題なく参照されていました。
- 変数xに文字列は問題なく参照されていました。
以下は現在の状況です。
- エラーは起こりませんが、Ctrl + V で貼り付けを行うと空欄が貼り付けられる。
- クリップボードから文字列を取り出し(a = GetText)表示させると空欄になる。(クリップボードに変数xが入っていない?)
クラスモジュールからクリップボードへの貼り付けは不可能でしょうか。
原因やこの場合のクリップボードへの貼り付け方法についてアドバイスいただければ有難く思います。
よろしくお願いします。




回答2件
あなたの回答
tips
プレビュー