• ベストアンサー

Excellの乱数表の計算を操作するには?

Excellで=randabetweenを使っています。この計算はF9を押すか、何か表の計算をしたら再計算されることを学んだのですが、私が使うには、ちょっと簡単に計算されすぎるので、F9を押したときのみ、か特定のコマを使ったときのみ再計算されるようにしたのですが、どのようにしたらそのようなそうさができるでしょうか? あるいはできないのか、知っている方がいたら教えてください。 よろしくお願いします。

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

  • ベストアンサー
  • Wendy02
  • ベストアンサー率57% (3570/6232)
回答No.4

こんばんは。 #2は名前--登録を使った。Ver.4 マクロ関数を使った方法です。 以下は思っているものとは違うものかもしれませんが、乱数表を作るためのものです。 ※標準モジュールへの取り付け方: Alt +  F11 (Altを押しながらF11)を押すと、Visual Basic Editor 画面が出てきます。 次に、メニューの[挿入]-[標準モジュール]と開けて、クリックすると、画面が現れますので、以下のコードを貼り付けて、 Alt + Q で、画面を閉じます。 マウスで入力する範囲を選択してから、Alt + F8 で、「RandBetweenMaking 」を実行してみてください。(私が実際に使っているマクロは、もう少し複雑な内容ですが、以下は、それを簡略化しました) よく使うようでしたら、個人用マクロブック(PERSONAL.XLS)に登録して、それを、ユーザー選択で、メニュー上のツールボタンにマクロを登録すると、便利です。 '------------------------------------------- Sub RandBetweenMaking()   'ランダムな数を作る   Dim c As Range   Dim i As Variant   Dim j As Variant   Dim t As Variant      If TypeName(Selection) <> "Range" Then Exit Sub   If Selection.Count = 1 Then     MsgBox "ランダム数値を入れる範囲を設定してください。"     Exit Sub   End If   On Error Resume Next   i = InputBox("初期値を入れてください。", "初期値")   j = InputBox("最終値を入れてください。", "最終値")   On Error GoTo 0   If i = "" Then Exit Sub   If j = "" Then Exit Sub   If Not IsNumeric(i) Then     MsgBox "入力されたものは数字ではありません。", 48     Exit Sub   End If   If i > j Then     t = i: i = j: j = t   End If   Randomize   'making random integer numbers from m to n   Application.ScreenUpdating = False   For Each c In Selection     c.Value = Int(Rnd() * (j - i + 1)) + i   Next c   Application.ScreenUpdating = True End Sub

shallowsou
質問者

お礼

マクロやVBAはこれまでやったことがなかったので、いろいろ大変でしたが、なんとか頂いたプログラムを使うことができるようになりました。ありがとうございます。

その他の回答 (3)

  • Wendy02
  • ベストアンサー率57% (3570/6232)
回答No.3

#2の補足: 後で気がついたのですが、質問のタイトルは、「乱数表」となっていましたが、もし、そうなら、乱数表を作るマクロを作ったほうがよいです。私自身、常に使っていますので、ご紹介できます。#2では、手間が掛かりすぎるはずです。

shallowsou
質問者

お礼

ありがとうございます。#2の方法は、マクロを使い慣れていない私にとって少し難しい内容だったので、その方法を教えていただけたら嬉しいです。

  • Wendy02
  • ベストアンサー率57% (3570/6232)
回答No.2

こんにちは。 >わたしは一部の計算だけ手動にして、残りを自動計算にしたいのですが、 RANDBETWEEN 関数というのは、再計算関数といって、計算命令が出ると、どこにあっても、システムの乱数ジェネレータから取得して、再計算してしまいます。ですから、もし、そうされたくないのなら、以下のようにしてみたらよいと思います。計算を手動にする必要はありません。 ------------------------------------------- 挿入--名前--定義 名前(W): RNDB <---任意です。 参照範囲: =EVALUATE("RANDBETWEEN(1,10)") <---1,10 は数字の範囲 OK ------------------------------------------- セルに、 =RNDB とします。数値の変更の場合は、F2 を押して、Enter を押すと変わります。しかし、F9 では変わりません。 なお、最初、VBAかと思ってやったのですが、なぜか、この方法が一番良かったのです。

  • okormazd
  • ベストアンサー率50% (1224/2412)
回答No.1

ツール―オプション―計算方法―手動 をチェックしておく。

shallowsou
質問者

お礼

ありがとうございました。初めて計算を手動で管理することができました。ただ、わたしは一部の計算だけ手動にして、残りを自動計算にしたいのですが、そのような方法をとることはできるでしょうか? もし知っていたら、またよろしくお願いいたします。

関連するQ&A

  • excellで作った表計算をワードにはりつけようとしているんですが、e

    excellで作った表計算をワードにはりつけようとしているんですが、excelの表が横に長いため、ワードにコピーしてもはみ出してしまい、全部の表が載りません。縮小したいができません。どなたかPCに詳しい方よろしくお願いします

  • Excellでの給与計算

    Excellで臨時に給与計算をしています。時給×時間(表記は¥1500、2:30のような形)で掛け算する際に60進法をExcellで上手く使えません。TRUNCを教わりましたが、普段の手計算とデータがずれてしまいます。

  • Excellの表をホームページに載せたいのです

    Excell で作った表をホームページの載せる方法を教えてください。 ホームページ・ビルダー 14を使っています。

  • Excel関数で、特定の計算ができるでしょうか?

    Excellを使っているのですが、ある操作ができる関数が分からなくて、困っています。クイズを作っていて、生徒が埋めた答えを、ひとつの操作をすることで全部クリアにしたいと思っています。 普段は記入された通りに表示できるのだが、あるコマを計算することにより、それらの記入をクリアにする、というような関数か計算式があるでしょうか?

  • エクセル操作の表

     エクセル操作で、より便利な操作の方法を示した表や、サイトがあるととても助かります  便利な操作方法というのは、例えば、Ctrl + Cはコピー   F8は半角カタカナとか、 Ctrl +Fは検索というような表です  よろしくお願いします

  • EXCELLの計算式の文字削除

    おはよう御座います! 初歩的な質問だと思いますが excell2007を使用していて、シートを他のシートに移動させた際に計算式に出てくる”Sheet1”やブック間の移動の際の”'C:\Users\mikansei\AppData\Local\Microsoft\Windows\Temporary Internet Files\[粗利表_.xls]車種別色々1'”等の文字を指定してまとめて削除する方法はありませんでしょうか 宜しくお願いいたします。

  • Wordで、Excellの表を90度回転してリンク

    Windows8.1(64bit)でMicrosoft Office 2013を使っています。 WordでA4縦書きの文章を作成し、2ページ目に横長で作成したExcell表をリンク貼り付けし、A4用紙に2ページ/枚指定で、印刷(A5で2ページをA4用紙に印刷)したいのですが、Excell表を横書向きに配置する方法が解りません。 読む人は、1ページ目のWord文書を読んで、2ページ目のExcell表は、用紙を回転させて横から見るようになりますが、それで良いのです。 Excellを回転させる方法を教えて下さい。

  • 「表計算ソフト」と「スプレッドシート」について

    「表計算ソフト」と「スプレッドシート」についての質問です。 表計算ソフトで操作しているシートがスプレッドシート。という認識で合っていますでしょうか? また,「表計算ソフト」=「スプレッドシート」になるのでしょうか?

  • エクセル表計算

    <エクセル表計算の表示> 表計算表を作成後、セルC・D・E・に任意の数値を入力後セルF・G・に「四則演算」の計算結果をアウトプットしたいんです。 セルF・G・に数式を入力すると「#DIV/0!」が表示されます。 「#DIV/0!」が表示されていても計算結果は手計算で検算も間違いありません。が数値入力前に「#DIV/0!」の表示がどうも頂けません。「#DIV/0!」を表示しないで良い方法をどなたかご教授下さいます様宜しくお願いいたします。

  • 表計算に疎いのでご教示ください。

    表計算に疎いのでご教示ください。 ‘’特定のセルに0の値、1~3の値、4~指定の値が入ると、そのセルを含む行が各々指定した色に変わる‘’ このようなことをするには何か方法(計算式)はありますでしょうか? その特定のセルには他のセルに数値を入力すると0になる計算式がすでに入っています。例えば他のセルに10と入力すると特定のセルに入っている計算式によって0となり、その条件を満たすと行全部が指定した色に変わるという感じです。わかりにくくてすみません。 ネットでいろいろ調べてもいまひとつ要領を得ません・・・。 よろしくお願いします。

専門家に質問してみよう