エクセルでDにA×Cの計算結果が入るように式をいれたのですが、微妙に+-2~4のずれがあります。(250×4が1002になったりする)特に何か設定をした憶えもないのです。同じテンプレートから作成しても常にその症状が起こる訳ではなく、たまになるのですが。
エクセルをいったん削除して、再インストールしても同じ状況です。
ちゃんとした答えが表示されるようにしたいのですがどうすれば良いのでしょうか?

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

A 回答 (4件)

こんにちは



 以下のページがご参考になるのでは?

Housaka's Home Page-エクセル奇譚
http://member.nifty.ne.jp/housaka/kitan01.html

Housaka's Home Page-エクセル奇譚 ~ 誤差アラカルト ~
http://member.nifty.ne.jp/housaka/kitan011.html

[XL97] 浮動小数点数値演算の結果に含まれる丸め誤差について
http://www.microsoft.com/japan/support/kb/articl …

[XL97] 数値を比較した結果が正しく返らないケースについて
http://www.microsoft.com/japan/support/kb/articl …

[XL97] 特定の小数部を持つ数値を入力した場合に誤差を生じる
http://www.microsoft.com/japan/support/kb/articl …

[XL] 浮動小数点の計算誤差と IEEE フォ-マット
http://www.microsoft.com/japan/support/kb/articl …

ROUND関数の結果を正常にするには?
http://cgi.fuji.ne.jp/~fj2094/cgi-bin2/wwwlng.cg …
5.txt

四捨五入するには
http://cgi.fuji.ne.jp/~fj2094/cgi-bin1/wwwlng.cg …
2.txt

参考URL:http://www2.odn.ne.jp/excel/
    • good
    • 0
この回答へのお礼

アドバイスありがとうございます。お礼が遅くなってしまって申し訳ございません。
沢山、参考URLを教えていただいてありがとうございます。他の方々がご指摘下さった「小数点が非表示」というのとは違うようなので参考URLで調べてみようと思います。

お礼日時:2001/01/30 23:55

Dの欄の書式設定は合っているのでしょうか?


右クリック→セルの書式設定→表示形式が数値になっていますか?

日付とか時刻になっていると訳わからん答えが出てきますよ。
    • good
    • 0
この回答へのお礼

アドバイスありがとうございます。お礼が遅くなってしまって申し訳ありません。
表示形式はちゃんと数値になってます。
いろいろな方にアドバイスいただいたのですが解決しなくて(泣)ネットとかでもう少し調べてみようと思います。

お礼日時:2001/01/30 23:52

INT(A*1)*INT(C*1)で計算してみてください。


これで1000になったら、AとCが小数点以下が非表示になっています。

(INTは整数化の関数です)
    • good
    • 0
この回答へのお礼

回答ありがとうございます。お礼が遅くなってしまいまして申し訳ございません。
教えていただいた関数を入れてみたり小数点以下の表示を変えてみたりしたのですが状況は変わりませんでした(泣)もう少しネットとかで調べてみようと思います。
ありがとうございました。

お礼日時:2001/01/30 23:58

ほんとに250や4が入ってますか?


じつは250.**とか、4.**で小数点以下が表示されない設定になってるんじゃないですか?
    • good
    • 0
この回答へのお礼

回答ありがとうございます。お礼が遅くなってしまってすみません。
小数点以下の表示とかいじってみたり数字をもう1回入れなおしたりしてみたのですが、状況は変わらないです。
もう少しネットとかで調べてみようと思います。
ありがとうございました。

お礼日時:2001/01/31 00:00

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

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

このQ&Aを見た人が検索しているワード

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

Qエクセル プルダウンの作り方

お世話になります。
エクセルでプルダウンの作り方を教えていただけませんでしょうか?
住所を▼のボタンでクリックしたら【北海道,青森,秋田,岩手・・・】などの選択ができるようにしたいのです。
宜しくお願いします。

Aベストアンサー

メニューから「データ」、「入力規則」、「設定」で「入力値の種類」を「リスト」を選択します。
そうすると「元の値」という表示がでますので、そこで前もって作っておいたリストの範囲を指定します。
多くないのでしたら、そのままそこにカンマで区切って入力しても出来ます。

QEXCELの起動時に常に同じシートを開く方法について

複数のシートを作っています。一番左側に目次というシートがあります。このファイルを複数の人で使用する為、違うシートで保存される事があります。その為、ファイルを開いた時にマクロ等を利用して、常に同じ目次というシートを開く方法があれば教えて欲しいと思います。

Aベストアンサー

[ツール]-[マクロ]-[VisualBasicEditor]
ThisWorkbookに下記を書き込むとできます。

Private Sub Workbook_Open()
Sheets("目次").Select
End Sub

Qエクセルでプルダウンメニューの作り方

  エクセルの画面で、よく三角形を逆さまにした形をクリックするといくつかメニューが出てき、どれかを選べるようになっていますが、その作り方を教えてください。
 会社で人事を担当していますが、三角形(プルダウンボタン)をクリックすると社員氏名一覧が表示され、そこから選択できるようにしたいのです。
 しばらく自力でいろいろやってみましたが、さっぱり見当がつかず、どうやればいいのか分かりませんでした。よろしくお願いします。

Aベストアンサー

こんばんは!
当方使用のExcel2003での一例です!

↓の画像のようにSheet2に名簿表を作成しておきます。
画像ではSheet2のA2セル以降を範囲指定 → 名前ボックスに仮に「名簿」と入力しOK
これで範囲指定したセルが「名簿」と名前定義されましたので、

Sheet1のリスト表示させたいセルを範囲指定 → メニュー → データ → 入力規則
→ リスト → 「元の値」の欄に
=名簿
としてOK

これでSheet1のセルをアクティブにすると右側に下向き▼が表示されますので、そこをクリック!
これで希望に近い形にならないでしょうか?
Excel2007の場合は↓のURLが参考になるかもしれません。

http://www.eurus.dti.ne.jp/~yoneyama/Excel2007/excel2007-ny_kis2.html

尚、同一Sheetに「名簿表」を作成する場合は名前定義する必要はなくて
「元の値」の右側の四角をクリックし、リスト表示したいセルをそのまま範囲指定すればOKです。

以上、お役に立てば良いのですが・・・m(_ _)m

こんばんは!
当方使用のExcel2003での一例です!

↓の画像のようにSheet2に名簿表を作成しておきます。
画像ではSheet2のA2セル以降を範囲指定 → 名前ボックスに仮に「名簿」と入力しOK
これで範囲指定したセルが「名簿」と名前定義されましたので、

Sheet1のリスト表示させたいセルを範囲指定 → メニュー → データ → 入力規則
→ リスト → 「元の値」の欄に
=名簿
としてOK

これでSheet1のセルをアクティブにすると右側に下向き▼が表示されますので、そこをクリック!
これで希望に近い形にならない...続きを読む

Q異なるブックに同じ書式、列幅のテンプレートをコピー→貼り付け

・・・をしたいんですが、同じブック内だったらうまくいくんですが、ブックが異なるとうまくできなくてこまっています。お願いします。

Aベストアンサー

コピー元のSheetを選択し
  ↓
「編集」→「シートの移動またはコピー」を選択
  ↓
出たダイアログボックスで「移動先ブック名」と「挿入先」を選択、「コピーを作成する」にチェック
  ↓
「OK」

でどうでしょうか?

Qエクセル(Excel) 納品書の作り方【画像修正版

昨日http://oshiete.goo.ne.jp/qa/7348426.htmlで質問させていただき、詳しくご回答いただき少し進んだのですが、状況が変わったので改めて質問させていただきます。

■エクセル(Excel)で納品書の作成をしています。
シート1に納品書、シート2に商品マスタ(一覧)を作っていて、シート2の一覧を反映させて
納品書に番号を打ち込むだけで、商品名・単価までが出るシステムを作りたいのですが、
昨日のご回答の中の「VLOOKUP」?を入れて、自分なりにマス目の数字を変えてやってみたのですが
反映されずN/?のようなエラーになってしまいます。

※画像が見にくかったのでシート<CENTER></CENTER>だけにしました。

1、上記のように、シート2との関連付けの係数を、写真の場合の数字で教えてください。

2、合計と、合計から20%を引いた数値を割り出す関数も、写真の数字で御願いします。

宜しくご教授お願い致します。

Aベストアンサー

こんばんは!
前回投稿した者です。

当方もかなり古い(人間も古い!なぁ~んちゃって!)Excel2003を使用しています。
↓の画像のようにSheet2にデータを作成しておきます。

#N/A というエラーは、「検索値」がない!ということですので
お示しの画像のB列にSheet2のA列にないデータを入力するとそういったエラーが表示されます。

画像のセル配置ですと
C4セルに
=IF($B4="","",VLOOKUP($B4,Sheet2!$A:$C,COLUMN(B1),0))
(「$」マークの位置に気を付けてください)
という数式を入れD4セルまでオートフィルでコピー!
そのまま最後の24行目までコピーしておきます。

F4セルには
=IF(COUNTBLANK(B4:E4),"",D4*E4)
という数式を入れ、F24までオートフィルでコピー!

これでB列に商品番号を入力すればSheet2のデータが反映され、
E列に数量を入力でF列に金額が表示されると思います。

最後に合計金額のF26セルは
=IF(COUNT(F4:F24),SUM(F4:F24),"")
手数料のF27セルは
=IF(F26="","",F26*0.2)

これで何とか形にならないでしょうか?

※ 振込金額の欄は不明ですので手を付けていません。

参考になりますかね?m(_ _)m

こんばんは!
前回投稿した者です。

当方もかなり古い(人間も古い!なぁ~んちゃって!)Excel2003を使用しています。
↓の画像のようにSheet2にデータを作成しておきます。

#N/A というエラーは、「検索値」がない!ということですので
お示しの画像のB列にSheet2のA列にないデータを入力するとそういったエラーが表示されます。

画像のセル配置ですと
C4セルに
=IF($B4="","",VLOOKUP($B4,Sheet2!$A:$C,COLUMN(B1),0))
(「$」マークの位置に気を付けてください)
という数式を入れD4セルまでオートフィルで...続きを読む

Qエクセルで、常に同じ場所が印刷されるようにするには

タイトルの件、質問いたします。

【やりたい事】
常に、A1セルという場所が印刷されるようにしたい

ただし、A1の内容は、オートフィルターにより、変わります。
例えば、A1で印刷設定をしておいても、オートフィルターによりソートすることで
A1の場所には、A15や、A18のセルが選択されることがあります。

あくまでも、画面上のA1の場所という意味です。

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

Aベストアンサー

例が良くないな。

> ただし、A1の内容は、オートフィルターにより、変わります。
> あくまでも、画面上のA1の場所という意味です。

どれだけ頑張ってもA1はA1。
A15やA18に書き換わる・置き換わる事は無い。

さらに言うなら、フィルタ範囲の1行目はタイトル行として扱われるから、
1行目をフィルタ範囲に含んでいるなら1行目が見えなくなることはありえない。


オートフィルタを掛けた結果の1つめのデータを印刷したい、と言うのであれば
印刷範囲の設定を解除、常に1ページ目だけを印刷する「クセ」を付けたら良い。

Qエクセル(Excel) 納品書の作り方【改めて】

昨日http://oshiete.goo.ne.jp/qa/7348426.htmlで質問させていただき、詳しくご回答いただき少し進んだのですが、状況が変わったので改めて質問させていただきます。

■エクセル(Excel)で納品書の作成をしています。
シート1に納品書、シート2に商品マスタ(一覧)を作っていて、シート2の一覧を反映させて
納品書に番号を打ち込むだけで、商品名・単価までが出るシステムを作りたいのですが、
昨日のご回答の中の「VLOOKUP」?を入れて、自分なりにマス目の数字を変えてやってみたのですが
反映されずN/?のようなエラーになってしまいます。

※画像が貼り付けてあります。商品名は1番以外伏せさせていただいています。
くっつけてありますが、左側がシート1・右側がシート2です。

1、上記のように、シート2との関連付けの係数を、写真の場合の数字で教えてください。

2、合計と、合計から20%を引いた数値を割り出す関数も、写真の数字で御願いします。

宜しくご教授お願い致します。

Aベストアンサー

画像がいまいちよく見えないのですが、納品書の項目は左から、No、商品番号、商品名、単価、数量、金額でいいのでしょうか(名前は多少違っていても意味があっていればもんだいないです)

でしたら、
C1セルに=IF(ISBLANK(B2),"",VLOOKUP(B2,Sheet2!$A$2:$C$200,2,FALSE))
D1セルに=IF(ISBLANK(B2),"",VLOOKUP(B2,Sheet2!$A$2:$C$200,3,FALSE))
E1セルは空白で
F1セルに=IF(D2="","",D2*E2)
といれて、C1からF1までをコピーしてその下の行にタテに貼り付ければ出来ますよ。
おそらくエラーが出たのは、コピーしたときにVLOOKUP関数の最初のセルの指定がずれてしまっているのでは無いかと思いますよ。     

QEXCELの図形はナゼずれる?ずれなくする方法を知りたい!

よろしくお願いします。
ときどきエクセルで図形付き文書ドキュメントを作成します。
例えば文章の一部を四角で囲んだり、画面のハードコピーをはりつけたり
するのですが、作成時のモニタ上のイメージと、印刷時では図形の位置が
ずれるのです。印刷プレビューをみて、カンでずれがなくなる位置を調節して、
もう一度プレビューをみて・・・を繰り返しながら、印刷時にずれなくなる位置を
さがすようにしています。でもこうすると、モニタ上のイメージのほうが
こんどはずれてきてしまい・・・
印刷用とファイル保存用に2つのバージョンを作るようにしているのでメモリをくってしまいます。
どうしてずれるのでしょうか、モニタと印刷のイメージのずれを正す方法はあるのでしょうか?

Aベストアンサー

自分もそういった経験があるのですが、基本的にはWORDで作られた方が無難です。
調整を繰り返すとにっちもさっちも行かなくなる事があります。

確かにEXCELでは行数の調節が楽ですし、段組も楽なのでそちらに頼りますが、
WORDも画を挿入することは出来ますし、図形描画で枠線を付けることも出来ますよね。

ただ、WORDの場合、EXCELより小さく図形を書くことが出来ません。そこがネックです。
しかし、方法があります。EXCELで図形を作成して、カット&ペーストでWORDに貼り付けると、
小さな図形をおくことが出来ます。但し編集すると大きくなってしまいますが。

EXCELはセルに上手く収まっている様に見えて収まっていない事がよくありますから、
凝った物には不向きかもしれませんね。

Qエクセル2007でプルダウンで選んだものに反応

Excel2007でプルダウンで選んだものに反応して隣のセルが自動入力される方法(エクセル2007)
A1をプルダウンで「猫」「犬」から選べるようにし、「猫」を選んだ場合B1に自動に「111」が、「犬」を選んだ場合B1に自動に「222」と入力されるようにしたいです。
ご教授の程、宜しくお願いします。

Aベストアンサー

VLOOKUP関数での方法です。
(1)別シートに入力文字列と対応コード表を作成。(仮にSheet2のA:B列範囲で順不同)
(2)B1に=IF(COUNTIF(Sheet2!A:A,A1),VLOOKUP(A1,Sheet2!A:B,2FALSE),"")を設定
   入力文字列が存在しない場合は空白としています。

Qある条件を加えてもマクロをちゃんと動かしたい

Private Sub Worksheet_Change(ByVal Target As Range)
Dim i As Long
If Target.Count <> 1 Then Exit Sub
If Not IsNumeric(Target.Value) Then Exit Sub
If Target.Value <> 1 Then Exit Sub
If Intersect(Target, Range("W:W, AC:AC, AQ:AQ, AW:AW")) Is Nothing Then Exit Sub
i = Target.Column - 6 '
Debug.Print Target.Address & " " & Target.End(xlToLeft).Column
If i < 1 Then Exit Sub
Target.Offset(0, i - Target.Column).Resize(1, 5).Copy
Application.EnableEvents = False
Target.PasteSpecial Paste:=xlPasteAll
Application.CutCopyMode = False
Application.EnableEvents = True
Target.Select
end sub

上のコードはW列、AC列、AQ列、AW列に1と入力すると、入力セルから
みて6つ左から5つのデータがコピーされるマクロです。ここでAK列、BE列からみて8つ左から5つのデータをコピーする
条件を付加したいのですがうまくいきません。

If Intersect(Target, Range("AK:AK, BE:BE")) Is Nothing Then Exit Sub
i = Target.Column - 8 '

↑ このコードを追加する感じです。 
この条件を付加しなければうまく動くのですが、付加して何とか動かしたいと考えています。
何か良い方法があればおしえていただけると幸いです。

Private Sub Worksheet_Change(ByVal Target As Range)
Dim i As Long
If Target.Count <> 1 Then Exit Sub
If Not IsNumeric(Target.Value) Then Exit Sub
If Target.Value <> 1 Then Exit Sub
If Intersect(Target, Range("W:W, AC:AC, AQ:AQ, AW:AW")) Is Nothing Then Exit Sub
i = Target.Column - 6 '
Debug.Print Target.Address & " " & Target.End(xlToLeft).Column
If i < 1 Then Exit Sub
Target.Offset(0, i - Target.Column).Resize(1, 5).Copy
Application.EnableEvents = False
Target.PasteSpec...続きを読む

Aベストアンサー

ふつーに丁寧に作成していけば,今の延長でも別にムズカシイ作業じゃありません。

private sub worksheet_Change(byval Target as excel.range)
 dim i as long
 if target.count > 1 then exit sub
 if target <> 1 then exit sub

 if not application.intersect(target, range("W:W,AC:AC,AQ:AQ,AW:AW")) is nothing then
  i = -6
 elseif not application.intersect(target, range("AK:AK,BE:BE")) is nothing then
  i = -8
 else
  exit sub
 end if

 application.enableevents = false
 target.resize(1, 5).value = target.offset(0, i).resize(1, 5).value
 application.enableevents = true
end sub


他にも例えばSelect caseを使い,Target.columnで仕分けてみるなんてやり方もアリかもしれませんね。

ふつーに丁寧に作成していけば,今の延長でも別にムズカシイ作業じゃありません。

private sub worksheet_Change(byval Target as excel.range)
 dim i as long
 if target.count > 1 then exit sub
 if target <> 1 then exit sub

 if not application.intersect(target, range("W:W,AC:AC,AQ:AQ,AW:AW")) is nothing then
  i = -6
 elseif not application.intersect(target, range("AK:AK,BE:BE")) is nothing then
  i = -8
 else
  exit sub
 end if

 application.enableevents = false
...続きを読む


人気Q&Aランキング