マクロを使った計算表を作って他の人に利用してもらっています。
計算を進める際途中経過をH~Z列までを使って計算し、その結果をA~G列を表示しています。途中経過のH~Z列やA~G列の計算式は見せたくないため、非表示にしたのち保護してあります。利用者は図表をコピーして利用できるよう、コピーが可能になるようにコピー禁止はしておりません。
ところが計算シート全体を他のシートにコピペすると、隠したはずのH~Z列を含むすべての列およびA~G列の計算式がすべて表示されてしまいます。
有料・無料の保護ソフトを試しましたが、どれもうまく作動してくれません。
そこでVBを使えばうまくできるものかと考えました。VBは全く分かりませんが6.0の環境は整っています。
当面のやりたいことは、コピペをした際に保護が破られないだけのことなのですが、VBを使えばそれが可能か否かを教えていただけませんか。可能ならばコードもお教えいただければ大変ありがたいです。
よろしくお願いします。
No.12
- 回答日時:
外野が失礼
AN10-11にスレ主さんは 誤解があるようです。
セル式に =関数(A1,B1,C1)として(必要なセル番地の値のみ関数に渡す)
標準モジュールに 関数(A,B,C) で、セル式の数値を受け取る、そして、セル式の計算式をコードで書けば、見えるシートの =関数 を見ても、参照セル番地が分かるだけで、VBAに書いた計算式は 見えないのだから、目的は達しているハズ・・・
VBにこだわっておられるようですが、VBでやるなら、標準モジュールに書いたその関数をVBでやるだけで、エクセルからVBに渡す手順が 面倒なだけ。かつ、
VBでやると、配布の時にインストール作業という、もっと面倒が増えますよ。
この辺が、エクセルは必要な部品一式(DLLなど)インクルードして、配布できますが、VBはコードだけで、必要DLLは 含まれませんから、インストールでDLLを相手のPCに移す面倒な手間が有りますよ。
2014itochan様
VBにこだわっている訳ではないのですが、それを使えば初期の目的が達せられるのかと思い、質問させていただきました。どうも見当違いのようでした。
一方市販のエクセルアドインを使用したソフトを見ると、シートの保護およびブックの保護がされていません。
ですから必要な計算は全部VBAの中でされているものと思われます。
皆様のおかげでだんだんやるべき方向が見えてきました。ありがとうございました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) シートが違う2枚のエクセルシートにある数値を別シートにコピーしたい(VBA?) 8 2022/03/31 12:24
- フリーソフト OpenOffice 表計算で文字としてコピペ 2 2023/05/31 11:11
- Excel(エクセル) 【困っています】VBA 追加処理の記述を教えてください。 1 2022/08/25 22:54
- Excel(エクセル) エクセル/列追加時、合計行の計算式 7 2023/03/15 11:14
- その他(IT・Webサービス) 高速処理可能な表計算ソフトについて ExcelやGoogleスプレッドシートのような表計算ソフトで、 2 2023/04/29 16:06
- Excel(エクセル) エクセルで値ではなく関数を参照する方法 6 2023/03/19 00:50
- Excel(エクセル) Excelで、あるセルだけ入力させたい、オートフィルターも使わせたい際のシートの保護 2 2023/02/23 15:14
- Excel(エクセル) エクセルでSUMIFS関数で条件範囲の部分が#valueになる。 4 2023/04/28 12:42
- Excel(エクセル) 【マクロ】マクロが保存されているエクセルとは、別のエクセルブックの全シートの非表示列を再表示したい 1 2022/12/24 20:48
- その他(自然科学) 論文のまとめに関して(小論文)添削お願いします。 6 2023/07/16 14:24
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
VBAで大量のファイルをシート名...
-
別のシートから値を取得するとき
-
【ExcelVBA】全シートのセルの...
-
XL:BeforeDoubleClickが動かない
-
ExcelのVBAのマクロで他のシー...
-
ブック名、シート名を他のモジ...
-
ユーザーフォームに入力したデ...
-
excelのマクロで該当処理できな...
-
特定の文字を含むシートだけマ...
-
同じ作業を複数のシートに実行...
-
【VBA】指定した検索条件に一致...
-
実行時エラー'1004': WorkSheet...
-
シートが保護されている状態で...
-
Excelマクロのエラーを解決した...
-
実行時エラー1004「Select メソ...
-
【Excel VBA】書き込み先のシー...
-
【VBA】シート名に特定文字が入...
-
VBAで指定シート以外の選択
-
IFステートの中にWithステート...
-
【Excel VBA】Worksheets().Act...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
別のシートから値を取得するとき
-
ユーザーフォームに入力したデ...
-
【ExcelVBA】全シートのセルの...
-
同じ作業を複数のシートに実行...
-
Excelマクロのエラーを解決した...
-
excelのマクロで該当処理できな...
-
XL:BeforeDoubleClickが動かない
-
ExcelVBA シート名を複数セルか...
-
実行時エラー'1004': WorkSheet...
-
VBA 存在しないシートを選...
-
エクセルのマクロについて教え...
-
エクセルのマクロについて教え...
-
ブック名、シート名を他のモジ...
-
【Excel VBA】Worksheets().Act...
-
ExcelのVBAのマクロで他のシー...
-
エクセルのシート名変更で重複...
-
特定の文字を含むシートだけマ...
-
シートが保護されている状態で...
-
Excel マクロについての相談
-
VBA 検索して一致したセル...
おすすめ情報
1~6まで、種々のご指摘をいただきましてありがとうございます。
ただ私がお聞きしたいのは、VBを使えばそのようなことができるのかどうかです。
VBに取り組むべきかどうかを考えたいのです。
よろしくお願いします。