A 回答 (2件)
- 最新から表示
- 回答順に表示
No.2
- 回答日時:
こんにちは。
お邪魔します。> マイクロソフトの前回の問題と関係するのでしょうか?
2014/12/9のOfficeセキュリティ更新プログラムによるActiveXコントロールの一連の不具合のことでしょうか?
http://support.microsoft.com/kb/2553154
だとすると、対策はお済みでしょうか?
http://support.microsoft.com/kb/3025036/ja
それでも尚「CommandButton21問題」
(従来のコントロール名の後ろに"2"が付いた名前に変更された為コントロールの付番が"21"から始まるように見える)
等、未だ解決していない問題が幾つか残っているようですが、、、。
今回の問題の原因については、2014/12/9のアップデートであると、
特定できるまでの情報がありませんので、ハッキリとした回答は出来ません。
現在お使いのWindowsやOfficeのバージョン?、それぞれ32or64ビット?、
2003で作成したブックを2007以降のバージョン[Excel 97-2003 ブック (*.xls)]形式で保存し直しているのかどうか?、
それとも[Excel 97-2003 テンプレート (*.xlt)]なのか?
コピー元のシートにはFrameコントロール上にコントロールを配置しているか?、
等によっても、違いが出てくるのではないでしょうか。
> サンプルとして用意した当番表のシートを実際の月当番表を作成するときに、シートのコピーをして作成します。シートはコピーされたのですが、そのシートに張り付けた印刷ボタン(クリックすると自動印刷)が今まで一緒にコピーされたのですが、コピーされません。
2014/12/9のアップデートが原因である場合、
「シートはコピー出来るのにコントロールだけコピーできない」
という現象は、私の方では確認出来ませんし、ちょっと考えにくいです。
「コントロールだけコピーできない」という
現象そのものは、以前からよく質問される課題ですので、まずは定番の手順で確認をしてみてください。
Excelのオプション設定を、気づかない内に、
(コントロールをコピーしないように)変更してしまっていた場合
(もし、そうでなければ、オプション設定や警告ダイアログに関する言及がある筈です)
というのが、質問された多くのケースで原因となっていたこと、です。
XL2003なら
[ツール]→[オプション]→[編集]
↓[□オブジェクトをセルとともに切り取り、コピー、並べ替える]
XL2010なら
[ファイル]タブ→[オプション]→[詳細設定]→[切り取り、コピー、貼り付け]
↓[□挿入したオブジェクトをセルと共に切り取り、コピー、並べ替えを行う(_O)]
の、チェックを外れていまっているのを、チェックし直す、
または、いずれのバージョンでも、VBAから、
Application.CopyObjectsWithCells = True
を実行する
等の手順で、シートのコピー時にコントロールもコピーされる状態に通常は戻せます。
"シートはコピーされたのですが、そのシートに張り付けた印刷ボタン...が...コピーされません。"
という説明からすると、以上の確認が先決です。
> コピーされていた古いファイルでしても同様です。
この記述の意味が私には汲み取れていません。ですので、もし見当違いでしたら、すみません。
が、状況に依っては、以上の手当てで解決する可能性もあるのかと。
次に、質問文の説明とは食い違うので、余談、ということになりますが、
「コントロールごとシートのコピーはされるがコントロールが機能しない」
というケースだった場合の話ですと、、、
MSForms.exd削除済みのWin7/Xl2010x64で、XL2003で作成した旧いブックをコピー元にして
Workbooks.Open Filename:=""コピー元ブック名.xls"
With Workbooks("コピー先ブック名.xlsm")
Workbooks("コピー元ブック名.xls").Worksheets("コピー元シート名").Copy After:=.Worksheets(.Worksheets.Count)
End With
というような記述を実行して確かめましたが、
(コピー元ブックでは[セキュリティ]の警告が表示されたままになるものの)
シートもActiveXコントロール(昔のツールバーコントロール)も見た目上は複製されました。
但し、コピー後の新しいシート上ではActiveXコントロールが機能しません。
これを機能させる為の応急処置としては、以下の手順。
[ファイル]タブ→[オプション]→[セキュリティセンター]→[セキュリティセンターの設定]
↓[ActiveXの設定]
↓[□先に確認メッセージを表示してから、初期化に危険が伴うコントロールには制限を強化し、初期化しても安全なコントロールには最低限の制限を適用して有効にする(_R)]
にチェックが入っているものを替えて
↓[□確認メッセージを表示せずに、すべてのコントロールを制限なしに有効にする(推奨しません。危険なコントトールが実行される可能性があります)(_E)]
をチェックしておいてから、シートをコピーするマクロを実行します。
これで、コピー直後からActiveXコントロールが機能するようになりますが、
説明にもある通り、セキュリティ上の不安は拭えない状態での、暫定的な対応ということになりますから、
セキュリティ環境の確認を含めて、よく検討した上で採否を見極めるようにしてください。
あくまでも暫定的な対策として、例えば急いで処理したい時の一時的な方法として紹介しているだけです。
MS側で今後対策の予定があるかどうか、この他により安全な方法があるかどうか、
私には、解りませんし、知り得る立場でもありません。
ただ元々がセキュリティ対策としての改編だったことを考えると、
ActiveXコントロールの新旧バージョン間の互換については、
新たなMSによる積極的な対策対応について(少なくとも至近では)
期待できないものだとは私は思っています。
〓抜本的な対策〓としては、
新しいバージョン側で新規に[名前を付けて保存](作成し直す)ことを、
どこかのタイミングで検討した方がよいのかも知れません。
その方が確実なのとすぐに結果が欲しかったので、無駄になるかも知れないとは思いつつ、
私の周辺では新バージョン導入直後に、
(場合によっては警告ダイアログ上で[コンテンツの有効化]ボタン等を経て)
〓[Excel 97-2003 ブック (*.xls)]を現行の[Excel マクロ有効ブック (*.xlsm)]に書換えて〓、
対策しました(ActiveXコントロールの互換の問題は以前からありましたから)。
なので、今回の問題を再現することも私の環境では簡単ではないので、
確度の高い話は出来ませんが、今の私としては、このような回答になります。
最後に、
「Frameコントロール上に配置したコントロールだけが消えてしまう」
ということでしたらば
(Frameコントロールは本来ボタンを配置する為のものではないので話が違うでしょうけれど)
私が今知っている限りでは、新しいバージョンのブックとして、
改めてコントロールを挿入し直す、という方法ぐらいしかないように思います。
尚もお困りでしたら、補足欄にでも書いてみて下さい。
No.1
- 回答日時:
12月の更新ファイルによる不具合の対処をしてあれば大丈夫だとおもいますが
対処済みでもそうなるのですか?
そうであれば、2010版などの新しいBookにVBAコードをコピーして使えるようにするだけで済むはずです。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
-
餃子を食べるとき、何をつけますか?
みんな大好き餃子。 ふと素朴な疑問ですが、餃子には何をつけて食べますか? 王道は醤油とお酢でしょうか。
-
人生最悪の忘れ物
今までの人生での「最悪の忘れ物」を教えてください。 私の「最悪の忘れ物」は「財布」です。
-
これ何て呼びますか Part2
あなたのお住いの地域で、これ、何て呼びますか?
-
牛、豚、鶏、どれか一つ食べられなくなるとしたら?
牛肉、豚肉、鶏肉のうち、どれか一種類をこの先一生食べられなくなるとしたらどれを我慢しますか?
-
あなたの習慣について教えてください!!
あなたが習慣だと思って実践しているものを共有してくださいませんか? 筋肉トレーニングでも朝シャワーでも、あなたが習慣だなと思えば何でも構いません
-
【ExcelVBA】マクロの入ったシートをコピーしても新しいシート内でマクロを動作させるには?
Excel(エクセル)
-
エクセル ボタンに設定したマクロごとボタンをコピー
Excel(エクセル)
-
VBAで保存しないで閉じると空のBookが残る
Excel(エクセル)
-
-
4
EXCEL VBA コントロールのコピー&ペースト
Excel(エクセル)
-
5
EXCELのVBAでシートコピーをしたとき元のマクロを削除するには?
Excel(エクセル)
-
6
メッセージボックスのOKボタンをVBAでクリックさせたい
Visual Basic(VBA)
-
7
VBA シートをコピー後、ボタンにマクロ登録
Excel(エクセル)
-
8
ハイパーリンクでジャンプした先のセルを画面の一番上に表示させたいです。
Excel(エクセル)
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・一回も披露したことのない豆知識
- ・これ何て呼びますか
- ・チョコミントアイス
- ・初めて自分の家と他人の家が違う、と意識した時
- ・「これはヤバかったな」という遅刻エピソード
- ・これ何て呼びますか Part2
- ・許せない心理テスト
- ・この人頭いいなと思ったエピソード
- ・牛、豚、鶏、どれか一つ食べられなくなるとしたら?
- ・あなたの習慣について教えてください!!
- ・ハマっている「お菓子」を教えて!
- ・高校三年生の合唱祭で何を歌いましたか?
- ・【大喜利】【投稿~11/1】 存在しそうで存在しないモノマネ芸人の名前を教えてください
- ・好きなおでんの具材ドラフト会議しましょう
- ・餃子を食べるとき、何をつけますか?
- ・あなたの「必」の書き順を教えてください
- ・ギリギリ行けるお一人様のライン
- ・10代と話して驚いたこと
- ・家の中でのこだわりスペースはどこですか?
- ・つい集めてしまうものはなんですか?
- ・自分のセンスや笑いの好みに影響を受けた作品を教えて
- ・【お題】引っかけ問題(締め切り10月27日(日)23時)
- ・大人になっても苦手な食べ物、ありますか?
- ・14歳の自分に衝撃の事実を告げてください
- ・架空の映画のネタバレレビュー
- ・「お昼の放送」の思い出
- ・昨日見た夢を教えて下さい
- ・ちょっと先の未来クイズ第4問
- ・【大喜利】【投稿~10/21(月)】買ったばかりの自転車を分解してひと言
- ・メモのコツを教えてください!
- ・CDの保有枚数を教えてください
- ・ホテルを選ぶとき、これだけは譲れない条件TOP3は?
- ・家・車以外で、人生で一番奮発した買い物
- ・人生最悪の忘れ物
- ・【コナン30周年】嘘でしょ!?と思った○○周年を教えて【ハルヒ20周年】
- ・10秒目をつむったら…
- ・人生のプチ美学を教えてください!!
- ・あなたの習慣について教えてください!!
- ・都道府県穴埋めゲーム
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
C++言語で、構造体のコピーは可...
-
Eclipseのコード入力時の、行コ...
-
Delphi6 ShowMessage のタイトル
-
シートに張り付けたボタンがシ...
-
Ctrl + Cなど複数の入力キー...
-
DataTableに入っているデータを...
-
EXCEL VBA
-
Access VBAから使用したExcelプ...
-
マウントしたディスクにcpで、...
-
ASP.net でコントロールをコピー
-
Listviewに表示された文字のコ...
-
arduino unoからデータを読み出...
-
CSVファイルの特定行の削除
-
Subversionで日本語ファイル名...
-
zip.001 zip.002 zip.003といっ...
-
パスワード付きmp3ファイルにつ...
-
「このファイルを開く前に常に...
-
「セキュリティの警告 発行元...
-
彼女の過去の恋愛に嫉妬してし...
-
svnでファイル移動すると履歴が...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
C++言語で、構造体のコピーは可...
-
Access VBAから使用したExcelプ...
-
一行おきに貼り付ける 可能でし...
-
DataTableに入っているデータを...
-
Ctrl + Cなど複数の入力キー...
-
マウントしたディスクにcpで、...
-
Eclipseのコード入力時の、行コ...
-
Listviewに表示された文字のコ...
-
文字列の切り出し
-
Activesheet.Pasteで困っています
-
エクセルVBA 実行時エラー'...
-
【UWSC】WEBページ内コピーした...
-
arduino unoからデータを読み出...
-
他プロジェクトのFormを自プロ...
-
シートに張り付けたボタンがシ...
-
Excelでコピーしたセル(テキス...
-
ブラウザからコピペすると文字...
-
Eclipseでコピーするとき行数な...
-
プログラム終了時にエラーが発...
-
ROBOCOPYをスペース付きのフォ...
おすすめ情報