その他インターネット

エクセル嫌いのための「趣味のエクセル」

数字ぎっしりの表計算ソフト、大事だとわかっていても、敬遠してしまう。そんなエクセルへの敵討ち。エクセルをおもちゃに遊んでしまいましょう。メルマガを見ながら、エクセルにひとつずつ入力していると、意外に可愛いやつになってくるかも。

全て表示する >

「趣味のエクセル」 No.78 2007/9/30 フエル・カレンダー9

2007/10/01

┌───┬───┬───┬───┬───┬───┬───┬───┬──
│   │ A │ B │ C │ D │ E │ F │ G │
├───┼───┴───┴───┴───┴───┴───┴───┴──
│ 1 │    エクセル嫌いのための「趣味のEXCEL」      
├───┤
│ 2 │                  NO.78   2007/9/30
└───┴──────────────────────────────
===================================
☆ 表を見るだけで拒否反応を起こしてしまう文系人間にもエクセルが面白く
 なる、エクセルで遊ぶマガジンです。
☆ このメールは、等幅フォントで見てください。
☆ できたら、エクセルを立ち上げながら読んでください。
☆ 最初に次のことをお断りしておきます。
(1)私が使っているエクセルはExcel97 です。2000や2002に比べるとかなり
  機能に見劣りがします。2000以上にある機能を使えばもっと楽にできるこ
  とを苦労してやっている場合があります。
(2)説明に「図」は使いません。全部言葉で説明しますので、少し回りくど
  くなりますが、我慢して下さい。
(3)エクセルになれていない人を想定して、細かい説明をはさんでいます。
  知っている人は読み飛ばしてください。
===================================

>>> こんにちわ。このメールマガジンをご購読頂いてありがとうございま
>>> す。
>>> はじめてご覧頂くみなさん、よくいらっしゃいました。バックナンバ
>>> ーはこちらをご覧下さい。
>>> ───→ http://homepage3.nifty.com/hcho/

===================================
今回の内容
−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
   ◎ フエル・カレンダー(9)
   ◎ えっちょ流用語解説 「いのち」2
−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−

         OOO 今日のお遊び OOO

********** フエル・カレンダー(9) ***********

★ 前回までにやったこと 

((( カレンダーで遊ぶ )))
(((  スタートリック  )))
((( 暑中見舞にひと工夫 )))「スピードくじ」を作る
((( 暑中見舞にひと工夫 )))気配り案内状を作ってみる
((( 暑中見舞にひと工夫 )))はがき裏表を作成する
((( グラフ機能を使って絵を描く )))グラフで作る幾何学模様
((( グラフ機能を使って絵を描く )))「帆船」を描く
((( ブロックくずしを作る )))一時休止です。しばらくお待ち下さい。
((( ナンバープレースを解く )))
((( 3択トレーナー ショートカットキー・マスター )))
((( 万華鏡もどき )))
((( ユーザー定義の書式を拡げる ))) 選挙啓発ポスター
((( セイムセットを解く )))
((( フエル・カレンダー )))

 1 フエル・カレンダーとは?
 2 画面を作る
 3 カレンダーを下の方へ広げる仕掛け
 4 土日に色をつける
 5 スピンボタンに説明をつける
 6 始まりの日付を表示
 7 今日の日付を表示
 8 終了ボタンを配置する
 9 表示する暦のデータを作成する
10 暦データの表示
11 行動・予定データ表に変える
12 行動・予定データ入力ツール(1)
   ・入力モードを整理する
13 入力シートの作成(1)
   ・年月日の入力欄
   ・記事の入力欄
14 ・入力モードを選択する
   ・モードにより入力記事を加工する

  はじめての方は申し訳ありませんが、バックナンバーを見てたどってみて
 ください。
                        ───→ http://homepage3.nifty.com/hcho/

===================================
         OOO 今回のお遊び OOO

********    フエル・カレンダー(9)    *******

9 カレンダーが広がれば何かが変わる

 b 「行動記録」を表示する

   フエル・カレンダーを数週間繰り上げて、「ああ、この週はこんなこと
  があったんだ」とか「あれは、映画をみた帰りだったから、○月○日のこ
  とだ」といったことを思い出す、そんな道具に使ってみたいと思います。

   そのための「行動を記録するツール」に取り組んでいます。。

   前回は入力モードを決め、モードによって、登録済み記事と新しく入力
  した記事を加工し、組み合わせて、登録する記事を作成する考え方を整理
  しました。
     *************************

 (8)データを登録する

   ・データの登録は、「データ登録」ボタンを押して実行します。

    このボタンは次のようなマクロプログラムを実行するようになってい
ます。

Sub データ登録()

Worksheets("記録データ入力").Activate'「データ入力」のシートを表示しま
           'す。
           'もともとそのシート上で作業していますから普通は
           '必要ありませんが、何かの都合で他のシートをあけ
           'ているとき、この操作を呼び出しても支障なく動作
           'できるようにしています。

act = Cells(11, 8)  '入力モードを確認しています。
e = 0         '動作継続フラグ。e=1の時実行中の動作を終了して次
           'の動作に移る

If act = 2 Or act = 3 Then'入力モードが「追加」、「消去」の場合

    '実行確認
    mssg = "データの内容が変更されます。" & Chr(10) & "実行しますか"
           'メッセージボックスを使って実行するかどうかを確
           '認します。この式は表示するメッセージを指定して
           'います。「 & Chr(10) &」のところは、この場所で
           '改行させるための式です。
    btn = vbOKCancel + vbCritical'ここから3行はエクセルが準備している
             'msgbox用の引数を利用しています。ここの部分は 
           '「OK」ボタンと「キャンセル」ボタンを付け、警告
           'マークを表示するよう指定しています。
    an = MsgBox(mssg, btn)'押されたボタンを判定するための式です。
           '「an」が押された結果を受け取る変数で、後ろの
           'MsgBox(mssg, btn)のところが、上で指定したメッ
           'セージとボタンを備えたmsgboxから答えを取って来
           'いということを表示しています。
    
    If an = vbCancel Then'もし受け取った答えがキャンセルであれば、
        e = 1     '作業をやめて(記事を消去し)
        Else     'それ以外だと
        e = 0     '作業を継続しよう
    End If
End If

If e = 0 Then     '作業を継続します。

'登録行番号検索    'まず書き込む場所がどこかを探します。
trow = 1       '調べているのが登録済みデータの何行目かを格納す
           'る変数です。1行目から始めるので初期値を1にし
           'ています。
tflg = 1       '探す動作をするかどうかを決めるフラグです。
myrow = 0       'データを登録する行を格納する変数です。今のとこ
           'ろ決定していないので0にしています。
tval = Cells(6, 2)  'チェックするキーを取得しています。これは入力し
           'たデータの日付で、同じ日付の記事が何番目にある
           'かをチェックしていきます。

While tflg = 1    'tflg=1の間、以下の動作を繰り返します。
    dval = Worksheets("記録・予定データ").Cells(trow, 1)
           '登録されたデータの日付を取得しています。
    If dval = 0 Then '調べる行の日付の列が0=未入力の場合は、この行
           'にはデータが入っていないということですから
        trow = trow  'この行番号を変更せずに置いておきます。
        tflg = 0   'これ以上は調べる必要がないので繰返しをとめます
        Else     '日付欄に数値が入っている時は
        If tval = dval Then
           '登録済みのデータの日付が入力した日付と同じであ
           'れば
            tflg = 0 '繰返しをとめます。
            Else   '登録済みのデータの日付が入力した日付と違う場合
            trow = trow + 1'次の行に移ります
        End If
    End If
Wend

myrow = trow     '登録するデータを格納する行番号を確定します。最
           '後に調べていた行がその行になります。

'登録データ

rhiduke = tval    '書き込み用のデータを整理しています。日付はキー
           'になる日付を使います。
    If rhiduke > "9" Then'もしこの日付が数字でなかった場合処理を中止し
           'ます。
        end
    End If
rkiroku = Cells(11, 2)'記録用の登録記事を取得します。
ryotei = Cells(12, 2) '予定用の登録記事を取得します。

'データ登録

Worksheets("記録・予定データ").Cells(myrow, 1).Value = rhiduke
           '記事を書き込む行のA列に日付を書き込みます。
Worksheets("記録・予定データ").Cells(myrow, 2).Value = rkiroku
           '記事を書き込む行のB列に記録を書き込みます。
Worksheets("記録・予定データ").Cells(myrow, 3).Value = ryotei
           '記事を書き込む行のC列に予定を書き込みます。

'終了処理(書き込みが終わると入力した「記録」、「予定」の記事を消しま
す)

Cells(7, 2) = ""
Cells(8, 2) = ""

End If

Cells(3, 2).Select

End Sub

  このプログラムをマクロのモジュールに貼り付けてください。

    A Sub〜End Sub まで選択してをコピー
    B Altキーを押しながらF10キーを押す
    C コピーしたものを貼り付ける


 (9)データ入力のサンプル記事

 次のデータは、入力シートの動作を確認するためのものです。実際に打ち込
んで試してください。(このデータはメールマガジン「忙しいあなたの代わり
に新聞読みます」(http://www.p-dash.tv/)の2007/9/1〜9/24までの「社会
トップニュース」を集めたものです。)

  2007/9/3遠藤農相、今日にも辞任
  2007/9/4玉沢元農水相が自民離党
  2007/9/5鴨下環境相「借入金800万円」説明できず
  2007/9/6品貸料、不当つり上げの疑い
  2007/9/7社保庁職員、懲戒受けても「A評価」
  2007/9/10「給油継続」だめなら内閣総辞職も
  2007/9/11年金記録「氏名なし」が524万件
  2007/9/12リッチランド会長6000万円所得隠し
  2007/9/13安倍首相辞任、自民新総裁選び本格化
  2007/9/14福田氏が出馬へ 麻生氏との対決軸か
  2007/9/18東北地方北部で大雨
  2007/9/19京都・父親殺害 次女、事前に斧を自ら購入
  2007/9/20市区町村職員の年金横領、新たに47件
  2007/9/21東芝元課長が架空リースで詐欺 被害60億

 これを、記録データとして入力してみてください。

 予定データのテストは、あなたの来月のスケジュールで試してみてくださ
い。

 いかがでしょうか。データはうまく入りましたか。フエルカレンダーの画面
で確認してみてください。

 このデータだけに特有かも分かりませんが、実際に入力してみると、データ
が長すぎて、表示画面(フエルカレンダーの)に入りきらなくて後ろの部分が
見えないものがあります。

 これにはいくつかの解決方法があります。
 1) 記事を短く書き換える。表示範囲に収まるように短くします。
 2) 文字を小さくする。
   表示画面の元はワークシート「記録・予定画面」ですから、このシート
  の列Bのセルを「縮小して全体を表示する」に設定します。
   A ワークシート「記録・予定画面」を開く。
   B セルB1:B17を選択します。
   C メニューバーの「書式」→「セル」→「配置」と開き、「文字の制
    御」のところの「縮小して全体を表示する」にチェックを入れて「O
    K」ボタンを押す。(ショートカットキーでは「Alt」キーを押しな
    がら「o」を押した後「Alt」キー押さずに「e」→「k」を押しま
    す)。
 3) 折り返して全体を表示する。
   文字をそのままの大きさで、2〜3行に分けて表示します。上のCの 
  「縮小して全体を表示する」の代わりに「折り返して全体を表示する」を
  選択します。
   この方法は行数によってセルの高さを変えてやらないと全部が表示でき
  ないのであまりお勧めできません。

 (10)隠しメッセージ

   最後に一つだけ隠しメッセージを入れていますので、その種明かしをし
  ておきます。

   通常は起こらないのですが、2月30日、とか9月31日と言った存在
  しない日付を入力した場合、"日=○○?"と日付の欄に表示するのです
  が、それだけでは頼りないので、「日付を修正してください」と赤い斜体
  太文字で表示するようにしています。

   ワークシート「記録データ入力」のセルD4に次のような式が入っていま
  す。

  =IF(LEFT(B6,1)="日","日付を修正してください","")

  セルの書式   色=赤
          スタイル=太字斜体

 以上フエル・カレンダーのお遊びは終了したいと思います。長い間ありがと
うございました。

〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓
----------------------------------------------------------------------
◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆
││││││││ え っ ち ょ 流 用 語 解 説 ││││││││
◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆

[[[ いのち (2)]]]

 「死ぬ」という日本語にもう少し関わってみます。

 「死ぬ」という意味を持つ言葉を「広辞苑」から拾い出してみました。パラ
パラと見ただけなので、もっと他にもあると思いますがこだわらないことにし
ます。

・あえなくなる 「敢え無い」=どうにも対処できない、こらえられない=
  *無理やり「死」へ連れて行かれたというニュアンス感じます。
・あがる
  *終わる、だめになる、脈などが絶えるの意味で魚や虫が死ぬことをさす
  言葉。
・息が切れる
・息を引き取る
・失せる(うせる)
  *うすれて見えなくなるの意で「七条の后失せ給ひにける後によみける」
  (「古今集」)という用例もあり、現代の「失せる」のような荒っぽい
  ニュアンスは見られない。
・うつる
  *物の形、状態、内容などがそのまま他の所にあらわれるの意で、この世
  からあの世へ居所を移す、というニュアンス。
・隠れる 高貴な人が死ぬこと。
・神去る(かみさる) 高貴な人が死ぬこと。
・かむあがる(神上がる)神が天に上がることから転じて天皇が崩御するこ
と。
・くたばる 体力が衰える、弱るの意味から発展して、「死ぬ」ことをのの
しっていう語。
  *くたびれる、くたくたなどと関連する語。
・雲隠る(くもがくる) 高貴な人が死ぬこと
・雲煙となる 死んで火葬の煙となる。
・ごねる 「死ぬ」の俗語。
・つい(終) 終わりの意より死ぬこと。
・亡くなる
・まかる・みまかる 謙譲語。行くの意から死ぬこと。
・逝く 
・消える・消え入る・消えうせる・消えはてる
・ねむる
・絶える
・斃れる(たおれる)

 「広辞苑」の見出し語には出てきませんでしたが、「世を去る」、「この世
を去る」、「あの世へ旅立つ」、「あの世へ行く」、あるいは「永遠の眠り」
のような言いまわしもあります。

 鎌倉時代にできた「字鏡集」という漢字字書の「死」の項に、訓読みとして
「タマシイツキヌ、キユ、キエヌ、イヌ」と書かれていると、広辞苑の用例に
引かれています。

 これらは「やまとことば」ですが、これに漢語、仏教用語を加えると大変な
数に上ることが判ります。

 「ごねる」という言葉は、現代では「ごねどく」などと、無理難題を言って
困らせるといった意味が強いですが、江戸時代には「死ぬ」という意味で庶民
の間で使われたようで、浄瑠璃に使われた用例が広辞苑でも引かれています。
現代でも富山県では方言と意識されて生きているようです。語源としては「御
涅槃(ごねはん=仏が死ぬこと、転じて死ぬこと)」を活用させたものか?と
広辞苑では紹介していますが、私は「臨終」の意味を表す「期(ご)」と関係
のある言葉ではないかと思っています。

 「死」を意味するこれらの言葉は、大雑把に「死後の世界」を前提として、
住み場所を変えるという思想を表現するものと、ただ「今の生」が終わること
だけに注目するものに分けることができます。

 「行く」、「移る」、「隠れる」などの意味の言葉から派生した主として高
貴な人の死を意味する言葉などは前者の系列に入ります。

 それに対し、「消える」、「なくなる」「くたばる」、「あえなくなる」、
「息を引き取る」などは後者の系列と考えてよいでしょう。

 「死後」をどう捉えるかというのは哲学上の大問題です。命の永遠性を前提
にしない「死」は恐怖の源泉です。死後がどうなるか判らないために、ただ今
生の終焉を恐れ、今生にしがみつくことに執念を燃やします。

 人はこの恐怖からのがれるために生命の永遠という思想を編み出しました。
死後の世界を信じることによって人は精神のバランスを保ってきたといえるか
もしれません。

 無論、死後の世界をどうイメージするかはそれ自体独自に発展の歴史を持っ
ています。

 もっとも単純なものは、死への恐れをそのまま死後の世界へ投影したもの
で、死後の世界を「恐ろしいもの」、「汚らしいもの」、「穢れたもの」とす
るイメージです。日本神話の中で、最初の死者は女神イザナミですが、夫イザ
ナギが妻恋しさに死者の国「黄泉(よみ)の国」にたずねていくと、妻は世に
も恐ろしい姿となっており、その姿を見て逃げ出した夫を恐ろしい形相で追い
かける、という話がありますが、これなどは明らかにこの範疇に入るでしょ
う。現代でも死を穢れたものとし、清め塩を参列者に配る葬儀の風習は、この
原始的な死後の世界への恐れを伝えたものです。

 死後の世界が、地下や天上にあるのではなく、この同じ世界にあり、生きて
いる人間と様々な係わり合いを持って見えない生存を保っていると考える思想
は、現代でも「心霊現象」への関心とともに有力です。現代のそれは、何らか
の理由により本来行くべき「彼岸」の地へいけなくなっている「迷える魂」が
生きている者に障害をもたらすという形ですが、先祖の霊が守護霊として守っ
てくれているというように死者とともに生きる考え方の痕跡は残されていま
す。

 死後の世界を「天国」と「地獄」に分ける考え方は、生活の中での悪行を退
け、善行を推奨する社会の価値観に対応するものです。死後にどちらの世界に
行くかを生前の行動が決定するものとする因果律を武器に、現世での行動を規
制しようとする、社会の自己保存機能が生み出したもので、社会生活がより複
雑で多様化した時代の産物です。

 死後の世界をこの世界とは別のどこかではなく、再びこの世界へ生まれ変
わってくるという考え方は、仏教の教義において高度に理論化されます。釈迦
によって語られた仏教の教義は、この世の中における4つの苦しみ「生老病
死」に如何に向き合うかという、人生哲学であって、結論的には慈悲の心を
持って互いに尊重しあい、助け合うことが人生を幸福にし、未来に幸福を続か
せるのであり、その法則を悟ることが四苦を超越する仏の境地であるというと
ころにあります。

 この世のことはこの世で解決できる、この世以外では解決できない、という
論理の底には、実在体としての死後の世界は介在できません。しかし現実には
人は死ぬ、死後はどうなる?という問題は残ります。

 すべての生あるものは永遠に生死を繰り返す、いったん死んでももう一度生
まれ変わってくるんですよ、という教義がその解決です。あくまでも「この
世」を舞台にしか人生ドラマは展開しません。ただ生まれ変わった時、どのよ
うな境遇に生まれてくるかは今のあなたがその原因を作っているのです。今の
あなたの境遇は、前の人生=前世の行いの結果であるように、今のあなたの行
動が次の人生=来世の境遇を決定するのです。

 仏教では「生の世界」と「死後の世界」という分け方ではなく、「過去の世
界」と「今の世界」、「未来の世界」と三つの「生の世界」を人は生きつつ転
変していくと考えます。死に際して自分は満足して生き抜いてきたと思うか
もっと違う生き方があったのにと悔やむか、その結果が次の「生」に現れてく
るけれども、その「生」はその時の「今の世界」であり、今の「生」はその時
の「過去の世界」=変えることのできない事実の塊です。あくまでも現に生き
ている「生」こそが最重要の舞台となるというのが、仏教的世界観です。

 確かに仏教に於ても「地獄」、「極楽」という死後の世界のイメージが存在
しますが、今生きている世界に「地獄」、「極楽」があるという考えに基づく
もので、今の生の結果が次の生の「地獄」、「極楽」の入り口となることを説
明するものです。

 現代科学が死後の世界をどのように取り扱っているのか、ということは非常
に興味を引きますが、この世界と違う別の死後の世界があるとは考えていない
ところに、仏教的世界観と非常に似通ったところがあると私は感じています。

 自然科学の発展の成果を取り込みつつ発展した17世紀〜19世紀のドイツ
哲学は、人間の精神の根拠が自然的物質にあるという認識に到達し、近代科学
の到達点を弁証法的唯物論として花開かせようとしたマルクスとエンゲルスの
試みは今なおその有効性を失ってはいません。

 「自然弁証法」と名づけられた哲学の試作の中でA.自然が永遠であるこ
と、B.生命が「たんぱく質の存在形式」であることが定式化されています。
この中に「生命」というものが「自然の永遠の運動」にもとづいた存在である
ことが明らかにされています。

 狭義の「生命」=「生き物の本質としての生命」が広い意味での生命=宇宙
における物質の運動の一属性であるとするとき、私たちの「生死」は広範な宇
宙の大きなうねりに飲み込まれた小さな一滴の水であることを受け入れざるを
得ません。

 狭義の生命の終焉により、あなたは諸元素に還元され、宇宙を構成する物質
として新しい生命の合成に参加することになるのです、と医師が説明しても私
たちは心の安らぎが得られるでしょうか。これを「あなたの生命は宇宙の大き
いうねりの中にかえって眠り、また新しい生命として生まれ変わってくるので
すよ」と宗教家がさとしたとしても、死後に希望は持てるでしょうか。

 現代人にとっての「死後の世界」は科学的知識があるだけ、簡単に結論付け
ることはできないようです。
===================================
┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌─┐┐┐┐┐┐┐┐┐┐┐┐┐┐┐┐┐
┌┌───────────────────────────────┐┐
 │     「趣味のエクセル」REVIVAL(48)      │
└└───────────────────────────────┘┘
└└└└└└└└└└└└└└└└└─┘┘┘┘┘┘┘┘┘┘┘┘┘┘┘┘┘
===================================
         OOO 今回のお遊び OOO

*******  ナンバープレースを解く(7)  *********

3 「ナンプレくん1号」の作成

 i 「完成!」の文字を表示させる

   第45号の「f 回答シートを作る」の中で、いくつかの部品を紹介し
  ましたが、あと一つ残っているのがこの部分です。

   回答シートのセルAH2 に次の式を入れました。 

   =IF(J3=0,AI2,"")

   この中のセルAI2 に「完成!」という文字が入っています。セルJ3とい
  うのは回答スペースでまだ確定した数字の入っていないセルの数を表示し
  ているところです。ここの数が「0」になると言うことは、すべてのセル
  の数字が確定したと言うことですから、パズルの答えが完成したという意
  味になります。その時だけこのセルAH2 に「完成!」という字が表示され
  ます。

   この「ナンプレくん〇号」では、このセルに表示された文字を「図のリ
  ンク貼りつけ」の機能を使って、位置・大きさを自由に配置するようにし
  ています。

   〇セルAH2 を選択し、コピーします。
   〇セルJ13 付近のセルを選択します。
   〇「Shift」キーを押しながら、メニューバー「編集」を押します。
   〇出てきたメニューの中から「図のリンク貼りつけ」を選んでクリック
    します。
   〇たぶん、今の状態では貼りつけられたのは周りに線の入った白い四角
    だと思います。その状態で、適当な位置に適当な大きさにして配置し
    て下さい。
   〇メニューバーの「ツール」→「オプション」→「表示」と開いて、
    「ウィンドウオプション」の一番下にある(たぶんこの位置です)
    「枠線」の前のチェックボックスのチェックをクリックして消しま
    す。
   〇「OK」ボタンを押すと、「回答シート」の枠線が消えます。同時に貼
    りつけておいた「完成!」を表示するセルの図形の周りの線も消えて
    しまいます。
   〇ここに表示する文字は「完成!」でなくても「勝った!」でも「GA
    ME OVER」でもなんでもよいのです。表示したい言葉をセル
    AI2 に書きこみます。
    文字数が多いとセルAH2 の幅では入らない場合があります。そのため
    にこのセルに「縮小して全体を表示する」の設定をします。
      *セルAH2 を選択します。右クリックして出てきたメニューから
       「セルの書式設定」を選びます。
       「配置」の画面を出し、「文字の制御」の「縮小して全体を表
       示する」にチェックマークをつけます。
       「OK」ボタンを押してワークシートに戻ります。

4 機能を強化して「ナンプレくん2号」を作成する

  a 「ナンプレくん1号」でいろいろと試しているうちに、いくつか機能
   が欲しくなりました。

 (1)問題番号を指定する
    「ナンプレくん1号」でテストを何度もやっているうちに、さっきの
   問題をもう一度見てみたい、と思うのに、乱数で選ぶようにしているた
   め、同じ問題を出すことができません。問題データで確かめるしかあり
   ませんでした。「テスト」は1番から順番にやりたいのに・・・という
   思いを満足させるために機能アップしました。

 (2)問題データの並びを変えて、データをどんどんふやせるようにする
    問題データを横の方に増やしていくと、エクセル97の場合では問題
   数は列IVまで256列、列A は項目名に使っていますから、255まで
   でいっぱいになってしまいます。これを9行目までを横向きに並べて、
   問題番号をA列に持ってくると、下の方へどんどんふやすことができま
   すから、最大65536行目まで、65535問のデータをためること
   ができます。

 (3)問題を回答スペースに書いて、それを問題データとして取りこむよう
   にする
    実際に問題番号1からやっていくと、いきなりできない問題にぶつか
   りました。途中で全部が「0」になってしまうのです。おかしいとおも
   って調べてみると問題データが間違っていました。
    回答スペースで修正して、困りました。ここで直しても問題データは
   元のまま、問題データを書きなおさなければ修正した事にはなりませ
   ん。そこで回答スペースの数字の並びを読みとって問題データを書き換
   えたり、追加したりすることができるようにしました。

 (4)追加した機能を実行するマクロプログラムは次のとおりです。

    下のマクロプログラムをすべてコピーします。

    「ナンプレくん1号」を開いて、Alt キーを押しながらF11 キーを押
   して、「Visual Basic Editer」の画面を表示します。

    プログラムの続きに先ほどコピーしたマクロプログラムを貼りつけま
   す。

    その状態でファイル名を「ナンプレくん2号」として保存して下さ
   い。

−−−−−ここから−−−

Sub 次の問題選択()

'im qn As Integer

Worksheets("回答シート").Select
    
    qn = Worksheets("問題シート").Cells(1, 11)
    
    qn = qn + 1
    
    Worksheets("問題シート").Cells(1, 11).Value = qn
    
    For i = 1 To 9
        For J = 1 To 9
        Cells(i, J) = ""
        Next J
    Next i
    
    問題転送
    
    セル選択
       
End Sub

Sub 前の問題に戻る()

'im qn As Integer

Worksheets("回答シート").Select
    
    qn = Worksheets("問題シート").Cells(1, 11)
    
    qn = qn - 1
    
    Worksheets("問題シート").Cells(1, 11).Value = qn
    
    For i = 1 To 9
        For J = 1 To 9
        Cells(i, J) = ""
        Next J
    Next i
    
    問題転送
    
    セル選択
       
End Sub

Sub 問題番号指定()

Worksheets("回答シート").Select

ipn =InputBox("表示する問題番号を入力して下さい", "問題番号指定", "1")
    If ipn = "" Then
        ipn = "0"
    End If
    qn = Val(ipn)
    If qn = 0 Then
        End
    End If
    
    Worksheets("問題シート").Cells(1, 11).Value = qn
    
    For i = 1 To 9
        For J = 1 To 9
        Cells(i, J) = ""
        Next J
    Next i
    
    問題転送
    
    セル選択
       
End Sub

Sub 問題保存()
Worksheets("回答シート").Select
dqn = Worksheets("問題シート").Cells(9, 11) + 1
cqn = Str(dqn)
qnf = 1
While qnf = 1
ipd = InputBox("保存する問題番号", , cqn)
If ipd = "" Then
    End
Else
qn = Val(ipd)
tst = Worksheets("問題データ").Cells(qn + 1, 2)
    If tst = 0 Then
        qnf = 0
        Else
        ipd2 = InputBox("上書きしますか  する=1 しない=0")
        uwf = Val(ipd2)
        If uwf = 1 Then
        qnf = 0
        End If
    End If
End If
Wend

Worksheets("問題シート").Cells(1, 11).Value = qn

rdt = 0
    For i = 1 To 9
        rdt = 0
        For J = 1 To 9
            cdt = Cells(i, J)
            rdt = rdt + cdt * 10 ^ (9 - J)
        Next J
        Worksheets("問題データ").Cells(qn + 1, i + 1).Value = rdt
    Next i
End Sub
Sub 回答スペースクリア()
    Worksheets("回答シート").Select
    For i = 1 To 9
        For J = 1 To 9
            Cells(i, J).Value = ""
        Next J
    Next i
End Sub

−−−−−ここまで−−−

 とりあえず今回は、ホームページの方に「ナンプレくん2号」として掲載し
ますのでそれを見てください。

===================================

編集後記:最後までお読み頂きありがとうございます。

 教科書検定で「軍により集団自決が強制された」という表現が書き換えられ
たため、「集団自決の強制」がなかったことにされるということで沖縄では、
激しい怒りが渦巻いています。

 二つの相反する事実が提出されています。集団自決を強制され実行して生き
残った人の証言と、そのような命令を出さなかったという生き残った司令部側
の軍人の証言です。どちらかがうそをついているのか、どちらも事実を言って
いるのか、真実はどこにあるのか。

 歴史的事実というのはしばしばこのようなジレンマを引き起こします。特定
の意図からうその証言をすることはあるでしょう。しかしそれがうそであると
いうことが証明されない限り、どちらもが事実であるということを前提に真実
を探求していくのが科学的立場というものです。

 相反する事実が同時に存在する状況とはどういうものだったのか、それを明
らかにすることが「真実」を明らかにすることになるのです。

 教科書検定委員会はその原則を忘れて一方に偏り、そのことによって真実を
捻じ曲げた。それゆえに事実の片方から激しい怒りを買っているのです。

 教科書検定はこれまでにもしばしばこのような問題を引き起こしています。
特に歴史記述は、南京大虐殺、従軍慰安婦、朝鮮人強制連行等の国際的に微妙
な問題については、その時の政治状況に応じて記述を書き換えてきています。

 歴史記述に関する限り、日本の教科書は真実よりも政治の流れを優先してい
ます。このことが関係諸国から日本の教科書に対する批判を呼び起こしている
ということを私たちは知っておく必要があると思います。

===================================
エクセル嫌いのための「趣味のエクセル」
発行者:えっちょ

ご意見などはこちらへ hcho@mbg.nifty.com
ホームページ     http://homepage3.nifty.com/hcho/
−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
このメールマガジンは次のところから配信しています。登録解除、バックナン
バーの閲覧はこちらからお願いします。

メルマガ天国  http://melten.com/m/13094.html
まぐまぐ    http://www.mag2.com/m/0000109260.htm
E‐Magazine   http://www.emaga.com/info/hobxls.html
カプライト   http://cgi.kapu.biglobe.ne.jp/m/8559.html
メルマ     sub-154201@mc.melma.com (登録用)
        us-154201@mc.melma.com (退会用)
 
*** このメルマガに返信していただいても購読解除できません。
    上のURLから手続きして下さい。
−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−

規約に同意してこのメルマガに登録/解除する

メルマガ情報

創刊日:2005-07-19  
最終発行日:  
発行周期:不定期  
Score!: - 点   

コメント一覧コメントを書く

この記事にコメントを書く

上の画像で表示されている文字を半角英数で入力してください。

※コメントの内容はこのページに公開されます。発行者さんだけが閲覧できるものではありません。 コメントの投稿時は投稿者規約への同意が必要です。

  • コメントはありません。