シートの保護で入力場所以外をロックしましたが、そのシートをコピーするといくらでも修正(改ざん)できます。
いじられたくないシートなので、更にシートのコピー自体を禁止する方法がどうしても分からず困っています。
皆様の知恵を拝借願えませんでしょうか。

Excel 2000 professionalを使っています。

このQ&Aに関連する最新のQ&A

A 回答 (2件)

こんにちは!



>そのシートをコピーするといくらでも修正(改ざん)できます
改ざんをどこまで心配するかの限度だと思うのですが
例えコピーされなくても表示される限り、他のBookに
一から作ることも可能ですから・・・

妥協範囲としては、数式までの保護が限度だと思います。
ご存知だと思いますが、
 数式が入力されている範囲を選択後、書式設定 保護タブ 表示しない
で数式は表示されず、コピーしてもその時の値のみ複写
されます。


[もっと極端な方法]
シートは オプション 表示 枠線のチェックを外し
罫線にてにて対応

入力セル以外は、別シート(セル幅高さが同一構成)で
入力セルをリンクして、処理し結果をカメラ機能で貼り付け
([ALT]キーを押しながら位置を微調整でセルにピッタリの位置になります)
その画像の書式設定を 保護

別シートは 書式 シート 表示しない
シートの保護 と Bookの保護 を行う
    • good
    • 0
この回答へのお礼

こんにちは~

えーとですね、例えば輸出用の資料のフォームをExcelで作りました。結構重要な資料なのでサイズや重量、商品価格などを1mm、1kg、1円たりともいじれないようにしたいのでしょが、ある部分だけはフリーにいじれるようにしたいのです。(パターン1)

他には料金表なんですが、A列に標準料金/D列に1割引料金/G列に2割引料金を表示します。(B/C/E/F/H/Iは参照元の値や計算式が入る)
料金表示は3行からで、1.2行は割引率の入力数値、参照元になっておりここは自由に改変可能。(パターン2)

問題は、保護をかけることで解決したと思ったのが、行と列の交点をクリックして右クリックすると、コピーが可能で、他のシートにそっくり貼り付けできる点です。

これでは折角作った表が他の人に色々といじられてしまいます。問題は、コピーのコマンドが消える方法が無いか・・・だったりします。

でも、

>数式が入力されている範囲を選択後、書式設定 保護タブ 表示しないで数式は表示されず、コピーしてもその時の値のみ複写されます。

で、一番近い結果を得られますのでそれで対応したいと思います。(一応それは試していたのですが、その時の値のみコピーされることまで確認していなかったので使えそうです。輸出用書類の方は必要事項を貰ってからPDFにでもして送るしか方法はなさそうですね。

ありがとうございます。

お礼日時:2001/12/02 13:39

EXCEL97で2000ではどうかわかりませんが、ファイルを保存するときオプションとしてパスワード設定できませんか。



読み込み・書き込みどちらにもパスワードが設定できるので
私の場合この方法でファイルを保護してます。
    • good
    • 0
この回答へのお礼

スミマセン。
ちょっと違います。
ありがとうございました。

お礼日時:2001/12/02 13:01

このQ&Aに関連する人気のQ&A

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aと関連する良く見られている質問

QA4-2枚集約→A4-1枚にコピーしたいです

いつもお世話になっております。

A4に2枚集約(2アップ)にしてある資料を、A4に1枚裏表にコピーし直したいです。
【元の資料】A4 左側No.1 右側No.2となっているものを(裏は白紙)、
【出来上がり】A4 表No.1 裏No.2にするということです。

【元の資料】をA3に拡大して折ればいいのですが、それだとかさばってしまい、できればA4両面にしたいです。
あと、かなり枚数があるので、できればA3で出力して裁断して節約したいのですが、これは難しいですよね。
【元の資料】A4に、一枚目No.1とNo.2、二枚目No.3とNo.4…となってますから。

コピー機はキンコーズに行くので、性能はいいはずです。

コピーがお得の方、知恵をお貸しください。

Aベストアンサー

キンコーズのコピー機がわかりませんが、多分最新かつ高性能の
機械が入っているはずです。

最近はコンビニなどのコピー機でも両面コピーが可能です。
最初に両面コピーを選んでコピーすれば、1枚目のスキャン、
2枚目のスキャンの順で手順が示されます。
ちょっと難しいのは表面と裏面の上下あわせくらいです。

Qシートをたくさんコピーするには?シートを日付順にコピーするには?

こんにちは、みなさん!!

エクセルのシートのコピーについて

Q1、シートのコピーはコピーするシートをクリックして
Ctrlキーを押しながら右側へドラッグすると1つコピーできますが、1つだけではなく、10個ですとか、20個など多数のコピーを1回ですることはできますでしょうか?

Q2、シート名が例えば「1月1日」とあった場合に、これを1月2日、1月3日・・・・・というように、連続してコピーすることはできませんでしょうか?

以上ご存知の方いらっしゃいましたらよろしくお願いします。

Aベストアンサー

> 1枚のシートのコピーを複数作成する、ということです。マクロ以外には方法はありませんでしょうか?

あまりエクセルは使わないのでわかりませんが、
おそらく無いでしょう。

普段、業務で使うブックにマクロがあるのがイヤなら、
マクロだけのブックを作り、使いたいときだけ、そのブックも開き、マクロの実行が終わったら閉じてしまう、という手もあります。

Qコピー機でA4は縦と横どちらがよい?

コピー機の給紙トレイにA4の紙をいれますが、オフィスにあるものは横長方向に入っているものが多いです。
しかしA3がコピーできる場合、A4は縦長にいれ、縦長に読み込んでコピーしたほうがドラムを通過する距離が短くなって、速度UPとドラムの寿命を長くすることができるような気がします。それでも通常横長に入っているのでこれには何か意図があるのでしょうか?

意味不明な質問ですがよろしくお願いします。

Aベストアンサー

お考えの通り、事務機業界ではA4縦長(というか、これをA4横送りと言います)が標準で、マシンもそれを想定して設計されています。速度を表現する場合も当然A4横送りで比較します。

では縦送りの用途ですが、これはA3からA4の縮小コピーで必要になります。
特にアナログ方式のコピー機ではこれは必須で、A4横送りしか用紙がセットされていないと、A3からA4への縮小がまったく出来ません。

最近主流のデジタルコピー機では、画像を一旦記憶し、A4に縮小後、90度画像を回転させてから書き込むことが可能なため、実はA4縦送りのセットは不要です。
しかしながら、原稿自動送り装置に原稿をセットする際、A3、B4は縦送り、A4、B5は横送りというのがすぐに理解できないユーザーが多い会社では、いちいち説明が面倒なので、原稿の向きを全サイズ揃えた方が判りやすいため、A4、B5とも縦送りでセットするケースが多いです。

(実を言うと、デジタルコピーでは等倍コピー時も画像回転が可能ですから、本当は、原稿セットは縦送り統一でもA4、B5は横送りセットでOKなんですがね。。)

お考えの通り、事務機業界ではA4縦長(というか、これをA4横送りと言います)が標準で、マシンもそれを想定して設計されています。速度を表現する場合も当然A4横送りで比較します。

では縦送りの用途ですが、これはA3からA4の縮小コピーで必要になります。
特にアナログ方式のコピー機ではこれは必須で、A4横送りしか用紙がセットされていないと、A3からA4への縮小がまったく出来ません。

最近主流のデジタルコピー機では、画像を一旦記憶し、A4に縮小後、90度画像を回転させてから書き込むことが可能なた...続きを読む

Qシートのコピーでリンク先をコピー先のシートのする方法

エクセル2003を使用しています。
「A」というブックのシートを「B」のブックにシートコピーしたいのですが、そのままコピーすると各セルのリンク先がAのブックに設定してある別のシートのままとなります。それをBの同じシート名にリンク先を変えることは出来るのでしょうか? よろしくお願いします。

Aベストアンサー

#2です。
補足ありがとうございました。
いい案は見つからないが
下記3案のうち、エクセルでのテンプレートの利用ぐらいがいいのではないかな。
ーー
●関数
Aブック

シート1      シート2                シート3
ーーーー      ------              ------
A1          =Sheet1!A! =コピー+張り付け=> =Sheet1!A!
                   範囲指定

                  =シートのコピ=>   =Sheet1!A!




ーーーーー     ーーーーーーー
=======================

Bブック
           ↓↓ ブックのシート1の「シートの他ブックへのコピー」

シート1       シート2
ーーーー      ------
A1          =[コピー元.xls]Sheet1!A1






ーーーーー     ーーーーーーー
コピー元
シート2(Sheet2)
F1には=LEFT(CELL("filename",F1),FIND("]",CELL("filename",F1)))
A1には=INDIRECT("'"&F1&"Sheet1'!A1")

ーーーーーー
上記をシートコピーでコピーし、新しいシートを新ブックに作る。
ーー
コピー先
シート2(Sheet2)が出来て
A1には
=INDIRECT("'"&F1&"Sheet1'!A1")
ーー
ただしF1には=LEFT(CELL("filename",F1),FIND("]",CELL("filename",F1)))
を後からでも入れる。
シートをふやし、シート名をシート1(Sheet1)にする。コピーしただけではシート1は無い。
結果シート2(Sheet2)のA1は123

==========
●テンプレート
コピー元を
名前をつけて保存ー
ファイルの種類ーテンプレート
コピー元T.xlt
--
必要な都度これを開いて、内容データを処理後、都合の良い名前で保存する。
===========
●VBA
指定範囲の全(各)セルの値と数式を調べ、例えば数式の設定ある場合(HasFormula)だけ、
コピー先の同一位置のセルに数式を設定する。
===
#1でヒントが出ている
コピー先での式の置換
式の中で
[・・]内を空白に置換
など出来るかもしれない。

#2です。
補足ありがとうございました。
いい案は見つからないが
下記3案のうち、エクセルでのテンプレートの利用ぐらいがいいのではないかな。
ーー
●関数
Aブック

シート1      シート2                シート3
ーーーー      ------              ------
A1          =Sheet1!A! =コピー+張り付け=> =Sheet1!A!
                   範囲指定

                  =シートの...続きを読む

Qコンビニのコピー機で拡大 A4→A2

コンビニのコピー機で、A4→A2に拡大コピーは出来るんでしょうか?

A2用紙1枚で出来なくても、A4用紙を4枚出力でもいいのですが・・・

出来るのであれば、やり方を教えて下さい。
宜しくお願いします。

Aベストアンサー

セブンイレブンだと
ポスター作成にすればできるでしょう

参考URL:http://www.sej.co.jp/services/copy.html

QエクセルVBAで、シートをコピーした際、コピーされた新しいシートのほう

エクセルVBAで、シートをコピーした際、コピーされた新しいシートのほうを指定する言葉を知りたい。
コマンドボタンにて、(1)内訳用シートをコピーで増やす。(2)新しいシートの番号を連番になるよう1増やす。(3)新しいシートのほうは入力しやすいよう、入力欄を消去する。シート名も1.2.3...とふえていくようにしたい。

新しくコピーされたほうのシートを指定したい場合はどのようなVBA用語になりますか?

いまは、元のシート指定方法しかわからないため、元シートの前にコピー作成し、元シートのNoを1増やし、データ消去で対応していますが、これだと、シート名に表示される内訳(1)(2)・・という番号になるので、できれば、コピーしたほうのシートを指定して、Noを1増やし、データ消去できれば解決するとおもうので。。いま、使ってるVBAはこんな式です。
ちなみにK6はシートNo、("B10:H30")("J10:K30")は入力欄です。


Private Sub CommandButton1_Click()


ActiveSheet.Copy Before:=ActiveSheet
Range("K6").Value = Range("K6").Value + 1

Range("B10:H30").ClearContents
Range("J10:K30").ClearContents


ActiveSheet.Select

ActiveSheet.Name = Range("K6").Value


End Sub

エクセルVBAで、シートをコピーした際、コピーされた新しいシートのほうを指定する言葉を知りたい。
コマンドボタンにて、(1)内訳用シートをコピーで増やす。(2)新しいシートの番号を連番になるよう1増やす。(3)新しいシートのほうは入力しやすいよう、入力欄を消去する。シート名も1.2.3...とふえていくようにしたい。

新しくコピーされたほうのシートを指定したい場合はどのようなVBA用語になりますか?

いまは、元のシート指定方法しかわからないため、元シートの前にコピー作成し、元シートのNoを1増やし、...続きを読む

Aベストアンサー

一番最後尾にデータの入っていないシートを
連番とダブらないような名前で作っておいて
Private Sub CommandButton1_Click()
Sheets(Sheets.Count).Copy Before:=Sheets(Sheets.Count)
NEWWS = Sheets.Count - 1
Sheets(Sheets.Count - 1).Name = NEWWS
End Sub
というのはどうでしょうか。

QA4文書のコピー代について

子どもの関係で役員をしていますが、行事等の案内書を作成する係に
なっています。

A4にごく普通の案内文と、ちょっとした地図(カラー)をコピー
した場合、1枚あたりのコストはおいくら程でしょうか。
白黒のみでフォント10程度で埋めた場合はいかがでしょう。

機種はキャノンMP500(インクジェット)です。
(メーカーに問い合わせしましたが、情報が足りないため回答不能
とのことでした。ですので、おおよそでも知りたいのですが)
行事も年に数回あり、その都度30枚ほどコピーし、今回まとめて
の請求となり困っています。
よろしくお願いいたします。

Aベストアンサー

 原稿用紙は無料。コンビニでコピーで10円。
 自宅プリンタですると安くはなりますが、ただ同然扱いになりかねません。主に用紙代ぐらいでしょうか?
 金額をはっきりさせたいのであればコンビニでコピー。5円の所もありますね。後はレジで領収書を発行してもらう、領収書の発行もしてくれるものもコンビニではある。

 プリンタでははっきり言ってわかりません。印刷面はどれぐらいの割合かでも変わります。だからわかりませんとしか言えません。
 色が分離しているとわかりやすいのですが、複数の色を一つのカートリッジで使用する形ですと、他の色が大量余っていても一色がだめだとすべて駄目になることがあります。

 私は用紙代を請求する程度です。用紙も安いものを使用していますのでボランティアの状態でもありますが。

QExcel VBA シートのコピー時に、シート上のコンボボックスもコピーしたい。

こんにちは。
Excel VBAについて質問させていただきます。
やりたいことは、
シートAにボタンとコンボボックスを配置し、
コンボボックスには氏名の一覧を設定しています。
そこで、ボタンを押すとシートAをボタンとコンボボックスごと
シートBという名前でコピーをしたいと思っています。

ActiveSheet.Copy Before:=Worksheets(1)
でシート・ボタン・コンボボックスのコピーはうまく出来たのですが、
コンボボックスに設定していた氏名の一覧はコピーされていませんでした。

コピー先のシートのコンボボックスにもう一度氏名の一覧を
設定するしかないのでしょうか?
それともシートのコピー時に何かいい方法があるのでしょうか。

宜しければアドバイスをお願い致します。
OSはWindows2000Pro
Excelは2000です

Aベストアンサー

こんばんは。再度の登場です。

先の回答は、ListFillRangeプロパティを使用したものですのでコピーしても値は保持されますが、
質問者のように、AddItemメソッドでセットしたものはコピーしても保持されませんので改めてセットする必要があります。

現在”コンボボックスの中身もコピー”されてるようですが、
その中身のコピーを実行するタイミングを誤ると上手くいかない場合があります。
シートのコピーと同時に”中身のコピー”をするとそれは一見上手くいってるようでも
ブックを閉じて再度開いたときにはクリアーされますので、
コピーしてできたシートがActiveになるたびにそのシートのComboboxにも値をセットしなければいけません。
WorkBookOpenイベントでセットしているのは「元のComboboxにのみ」Listをセットしているわけですから。

●要約●
以下、コピーされてできた新しいシートは、見積書2、とする
(方法1)
「見積書2」がアクティブになる度に「見積書」のComoboxのListをコピーする
(方法2)
WorkbookのOpenイベントの”Function SetComboBox()”を標準モジュールへ移し、
「見積書」「見積書2」それぞれのActivateイベントで、”Function SetComboBox()”を呼び出す
その場合、”Function SetComboBox()”のComboboxのコンテナである固有のシート名は使わずに、ActiveSheetに変更しておく
(方法3)
WorkBookのOpenイベントでは、リスト一覧を配列変数に作成しておき
「見積書」「見積書2」がActiveになったときそのシート上のComboBoxのListに配列変数をセットする
 
●もし興味があれば、配列変数をListプロパティに直接セットするコードをアップしてもいいのですが。。。
 
それから、敬称Comboのリストは決まっているようですから、
別なシートのどこかのセルに一覧を作っておき、
ListFillRangeプロパティにセットしておけばいいですね。

以上です。

 

こんばんは。再度の登場です。

先の回答は、ListFillRangeプロパティを使用したものですのでコピーしても値は保持されますが、
質問者のように、AddItemメソッドでセットしたものはコピーしても保持されませんので改めてセットする必要があります。

現在”コンボボックスの中身もコピー”されてるようですが、
その中身のコピーを実行するタイミングを誤ると上手くいかない場合があります。
シートのコピーと同時に”中身のコピー”をするとそれは一見上手くいってるようでも
ブックを閉じて再度開いたとき...続きを読む

QA3まで対応のコピー機ってA4も印刷できるんですか

題名の通りですが
「A3まで対応」と書いてあるコピー機はA4の印刷も可能なのでしょうか?
いまいち紙のサイズについて詳しくないのですが
A3が印刷可能なら当然A4も印刷できますよね?

よろしくお願い致します。

Aベストアンサー

リ○ー の使ってますが A3(大)から はがきサイズ(小)までなら 出来ます。
なので A4も当然出来ますよ。
購入するときに、ブ○ザ-も 検討しましたが やっぱり出来るようでした。
私は B5までしかした事ありませんが・・・。

Qシートをコピー、シート名を変更

Windows8でExcel2000を使っています。
こういうマクロはどう書けばいいんでしょうか?

同一ファイル内で、シートを複数枚コピー。
複数選択したセルに入力された文字列を、上記でコピーされたシート名に反映したい。

「原本」というシート名のシートがあり、それを元に一年分の表を作りたいのですが
今は手で11枚コピーを作った後1枚ずつ名前変更でやっています。
シート名にしたい文字列は現在なら「2015年01月」~「2015年12月」です。
セルに「2015年01月」~「2015年12月」を入力、選択した後マクロ実行で
シート名変更に反映できればありがたいです。

Aベストアンサー

ふつーに、必要な数だけシートのコピーと名前付けを繰り返すだけです。

sub macro1()
 dim h as range
 on error resume next

 for each h in selection
  worksheets("原本").copy after:=worksheets(worksheets.count)
  activesheet.name = h.value
 next
end sub



>入力、選択した後マクロ実行でシート名変更に反映

記入した内容が「シート名として適切ではない」場合(たとえば同じ名前のシートが既にある等を含む)の処置について考慮されていませんね。
必要に応じて自力で適切に工夫してみて下さい。


人気Q&Aランキング