OKWAVEのAI「あい」が美容・健康の悩みに最適な回答をご提案!
-PR-
解決
済み

Excelで計算式が無いのに計算ができる!?

  • すぐに回答を!
  • 質問No.176694
  • 閲覧数63
  • ありがとう数3
  • 気になる数0
  • 回答数3
  • コメント数0

お礼率 36% (305/844)

インターネットで個人の方が公開しているエクセルのワークシートをダウンロードしてきました。勤務時間を計算するものなのですが、それをアレンジして自分流に使いたいと考えているのですが、どこを見ても計算式が入力されていないのに、所定位置に出社時間・退社時間を入力すると実勤務時間が計算されて表示されているんです。

そこで
・どうしたらこういったことが可能なのか
・実際に使われている計算式を見ることは可能なのか
を教えてください。
通報する
  • 回答数3
  • 気になる
    質問をブックマークします。
    マイページでまとめて確認できます。

質問者が選んだベストアンサー

  • 回答No.2
レベル10

ベストアンサー率 40% (53/131)

通常の手段で、マクロを使用しない方法として
セルの書式で保護の項目を「ロック」「表示しない」にチェックして、ツール→保護で「シート保護」の設定をすれば、計算式は見えません。
また、入力シートと計算シートを別に作り、計算シートを「非表示」に設定することも可能です。

ツール→保護とたどって、保護の解除でパスワードの入力を求められなければ、アレンジ可能ですが、作成者の意図に添わない改ざんを許可しないようパスワードを設定していることは考えられますね。
いずれにせよ、自身で使われる分には、多少のアレンジは可能かと思いますが、ファイルの再配布などは行わないよう配慮が必要です。
お礼コメント
yama_x

お礼率 36% (305/844)

ご指摘のとおり、保護されており、残念ながら参考にすることが出来ませんでした。
ご回答ありがとうございました。
投稿日時 - 2001-11-30 07:15:50
-PR-
-PR-

その他の回答 (全2件)

  • 回答No.1
レベル9

ベストアンサー率 56% (34/60)

はじめまして。 御質問の内容ですが、 >どうしたらこういったことが可能なのか マクロ、VBAを使用されているのだと思います。 ツール→マクロ→VisualBasic Editerを開くと確認できるかと思います。 >実際に使われている計算式を見ることは可能なのか 多分、パスワードがかかっているので中身は見れないと思いますが、パスワードがかかっていなければ、見ることは可能です。見れたと ...続きを読む
はじめまして。

御質問の内容ですが、
>どうしたらこういったことが可能なのか

マクロ、VBAを使用されているのだと思います。
ツール→マクロ→VisualBasic Editerを開くと確認できるかと思います。

>実際に使われている計算式を見ることは可能なのか
多分、パスワードがかかっているので中身は見れないと思いますが、パスワードがかかっていなければ、見ることは可能です。見れたとしても、VisualBasicかマクロを知らないと解らないかと思います。

Excelのヘルプに載っていますので一度御覧下さいませ。
それではこれでm(__)m
お礼コメント
yama_x

お礼率 36% (305/844)

どうやらVBA等ではなく、#2のお答えの通り、保護されていたようです。結局中身は見れませんでした。
回答ありがとうございました。
投稿日時 - 2001-11-30 07:13:42

  • 回答No.3
レベル13

ベストアンサー率 68% (791/1163)

>どうしたらこういったことが可能なのか マクロを作って、セルの値が変わったら計算して該当のセルにかき出すことで可能です。 例えば、下記マクロは、A、B列に数値を入力したら、A列セル-B列セルをC列に書き出します。(Sheet1を使用) ツール→マクロ→Visual Basic Editor でVBE画面に移り、Sheet1のコードウインドウに貼り付けます。 >実際に使われている計算式を見ること ...続きを読む
>どうしたらこういったことが可能なのか
マクロを作って、セルの値が変わったら計算して該当のセルにかき出すことで可能です。
例えば、下記マクロは、A、B列に数値を入力したら、A列セル-B列セルをC列に書き出します。(Sheet1を使用)
ツール→マクロ→Visual Basic Editor でVBE画面に移り、Sheet1のコードウインドウに貼り付けます。

>実際に使われている計算式を見ることは可能なのか
VBE画面に移り、プロジェクトエクスプローラを出して、シートのコードやモジュールのコードが表示されれば見ることができるでしょうが、普通は保護がかけてあり、パスワードの入力が必要になるのではないでしょうか。

Private Sub Worksheet_Change(ByVal Target As Excel.Range)
  On Error GoTo errorHandler

  If Target.Count = 1 Then
    If Target.Column = 1 Then 'A列を変更した場合
      If IsNumeric(Target.Offset(0, 1)) And Target.Offset(0, 1) <> "" Then
        Target.Offset(0, 2) = Target.Value - Target.Offset(0, 1)
      End If
    ElseIf Target.Column = 2 Then 'B列を変更した場合
      If IsNumeric(Target.Offset(0, -1)) And Target.Offset(0, -1) <> "" Then
        Target.Offset(0, 1) = Target.Offset(0, -1) - Target.Value
      End If
    End If
  End If

  Exit Sub

errorHandler:

End Sub
お礼コメント
yama_x

お礼率 36% (305/844)

ご回答ありがとうございます。
しかしながら私の理解力を越えており・・・
精進します。
またよろしくお願いします。
投稿日時 - 2001-11-30 07:17:39
このQ&Aのテーマ
このQ&Aで解決しましたか?
関連するQ&A
-PR-
-PR-
このやり方知ってる!同じこと困ったことある。経験を教えて!
このQ&Aにはまだコメントがありません。
あなたの思ったこと、知っていることをここにコメントしてみましょう。

その他の関連するQ&A、テーマをキーワードで探す

キーワードでQ&A、テーマを検索する
-PR-
-PR-
-PR-

特集


いま みんなが気になるQ&A

関連するQ&A

-PR-

ピックアップ

-PR-
ページ先頭へ