マイツール ちょっと気配り 計算編

ソースはHTMLで書かれていますので、マウス等で範囲を指定し、CTRL+Cでコピー。 マイツールを起動して「仕事は=」CPAST[ENTER] 後、SETX にてフォーマット行、計算開始行、計算終了行を設定なさって下さい。

この為、TABLEタグ等を使っていませんので、ブラウザのフォントサイズによって、文字がずれる場合が有ります。
Netscape4.75 16px 12px 8px にてOKですが、「12px」で見易いように書かれています。
InternetExplorer 4.72 最大 中 最小 にてOKですが、「中」で見易いように書かれています。
「画面のプロパティ」の「設定」の「詳細」で「大きいフォント」になさってる場合は、Netscape 10px InternetExplorer 最小 が良いかも知れません。

[ MWM | VMUG | takamiya.com | MUGかながわ | 気配り総合メニュー ]

【計算関係】

*1,‥‥‥計算結果にカンマを入れたい
ACMC‥‥複数ページに渡るデータの順位付け
AV‥‥‥‥空白データが有る時の平均値
ADD‥‥‥連続加算と減算<
MTR‥‥‥空白のセルを0で埋めたい
SEQ‥‥‥頭に0を付けて連番を振りたい
SEQ‥‥‥ゴルフの順位付け
C‥‥‥‥‥罫線データの有る表と文字計算

【操作、印刷、その他】


[ MWM | VMUG | takamiya.com | MUGかながわ | 気配り総合メニュー ] この頁の目次TOP ]

MUGかながわにゅーす第20号 「ちょっと気配り」 1992.09.28

SEQ‥‥‥ゴルフの順位付け

UPD命令のN(最小値)を使った順位付けの方法を紹介します。
同じ得点の人がいる場合の順位付けはとても面倒なもの。
ゴルフ好きの会員の方には喜ばれるのでは・・・。

F=10,5,5
~~~~~~~~~~~~~~~~~~~~    ~~~~~~~~~~~~~~~~~~~~    ~~~~~~~~~~~~~~~~~~~~
氏   名 得点 順位   氏   名 得点 順位   氏   名 得点 順位
~~~~~~~~~~~~~~~~~~~~   ~~~~~~~~~~~~~~~~~~~~   ~~~~~~~~~~~~~~~~~~~~
織田 祐二 95  1   織田 祐二 95  1   織田 祐二 95  1
鈴木保奈美 95  2   鈴木保奈美 95  2   鈴木保奈美 95  1
加勢 大周 90  3 + 加勢 大周 90  3 = 加勢 大周 90  3
柳葉 敏郎 90  4   柳葉 敏郎 90  4   柳葉 敏郎 90  3
鶴見 辰吾 90  5   鶴見 辰吾 90  5   鶴見 辰吾 90  3
浅野 温子 80  6   浅野 温子 80  6   浅野 温子 80  6
浅野ゆう子 80  7   浅野ゆう子 80  7   浅野ゆう子 80  6
~~~~~~~~~~~~~~~~~~~~   ~~~~~~~~~~~~~~~~~~~~   ~~~~~~~~~~~~~~~~~~~~
   画面             S/1         UPD後の画面

(1) 得点の高い順に並べ替えを行い、1から順に連番をふります。
    S::2:4:::
    SEQ[1,1]=C3:

(2) 画面をS/1に書き込みます。
    W:S/1:

(3) キ―列を得点の列にして置き換えをします。
    UPD::S/1:2:2:N:3:3::

キ―列を得点の列にしていますので、同じ得点を一つのグル―プとしてみます。

例えば、95点の人が二人いますが、順位の列に連番を振っただけでは1位と
2位になります。  画面をコピ―した裏画面に対して、UPDのNを掛けた時、
同得点の人の順位のうちで数の少ない方(この場合1と2を比べて最小値)が
選ばれますので、1が95点の人の順位となって記入されます。
90点以下も同様に順位付けされるわけです。

但し、この方法では1画面でしか操作出来ませんので、複数頁に分かれている
デ―タの順位付けには向きません。

なお、M4からは  RANK:C2:1:1:C3 で出来ます。

[ MWM | VMUG | takamiya.com | MUGかながわ | 気配り総合メニュー ] この頁の目次TOP ]

MUGかながわにゅーす第21号 「ちょっと気配り」 1992.12.24

ACMC‥‥複数ページに渡るデータの順位付け

ACMCを使って、複数ページに渡るデータの順位付けをしてみましょう。

[成績表1][成績表2][成績表3]・・・と複数の成績表があるとします。

F=10,5,5
~~~~~~~~~~~~~~~~~~~~    ~~~~~~~~~~~~~~~~~~~~ 
氏   名 得点 順位   氏   名 得点 順位 
~~~~~~~~~~~~~~~~~~~~   ~~~~~~~~~~~~~~~~~~~~ 
織田 祐二 95      織田 祐二 95  1 
鈴木保奈美 95      鈴木保奈美 95  1 
加勢 大周 90    → 加勢 大周 90  3 
柳葉 敏郎 90      柳葉 敏郎 90  3 
鶴見 辰吾 90      鶴見 辰吾 90  3 
浅野 温子 80      浅野 温子 80  6 
浅野ゆう子 80      浅野ゆう子 80  6 
~~~~~~~~~~~~~~~~~~~~   ~~~~~~~~~~~~~~~~~~~~ 

*M3
S:=成績表*:2:4::S1:Z2=Z0:    *得点順に並べ替える。

FOR  Z1=1  TO  Z2:
R:S(Z1):1=C3:W:S(Z1):      *3列目に1を入れる。
NEXT:

ACMC:S1―Z2::C3,C3:+::      *順位の連番をふる。
ACMC:S1―Z2:2::C1,C3:::    *得点をキーに繰越演算。

STOP:

計算場所をC1(名前の列)で指定し、書き込み場所はC3(順位の列)に
指定します。  C1は文字列ですからマイツールは計算ができず、キー列で
指定した得点の列で、同じ得点のグループ毎の先頭にある数字を、そのまま
入力していきます。  その為、こういった順位付けが出来るわけです。
マイツールをだまして操作するわけですね。

M4以降ならば、RCで繋げて置き、RANKも使えますが、
こういう方法は色々な応用性が有りますね?   1997.01.10

[ MWM | VMUG | takamiya.com | MUGかながわ | 気配り総合メニュー ] この頁の目次TOP ]

MUGかながわにゅーす第23号 「ちょっと気配り」 1993.06.30

SEQ‥‥‥頭に0を付けて連番を振りたい

  知っていると便利なちょっとしたテクニックを集めてみました。

(1)  0001のように、頭に0(ゼロ)を付け連番を入れたい!

   [商品コード表]
   F=1,4,1,6,1
   ~~~~~~~~~~
   |CODE|  品名|
   ~~~~~~~~~~
   |   1|    A|   2列目に上記のように連番を振ります。
   |   2|    B|
   |   3|    C|   まず1から順に連番を振ります。
   |   4|    D|   計算式:SEQ[1,1]=C2[実行キー]
   |   5|    E|
   |   6|    F|
   |   7|    G|
   ~~~~~~~~~~

   ~~~~~~~~~~
   |CODE|  品名|   SHUで検索条件なしで、
   ~~~~~~~~~~   「書き換える列は」で  2$[実行]
   |0001|    A|   「新しいデータは」で  0(ゼロ)[実行]
   |0002|    B|                         と入力してください。
   |0003|    C|   そうすると2列目の余白に全て0(ゼロ)が入ります。
   |0004|    D|
   |0005|    E|   仕事は=SHU:::Y:2$ :0::
   |0006|    F|                               ~
   |0007|    G|                               ↑
   ~~~~~~~~~~                         半角スペース(これが大切)

[ MWM | VMUG | takamiya.com | MUGかながわ | 気配り総合メニュー ] この頁の目次TOP ]

MUGかながわにゅーす第23号 「ちょっと気配り」 その2

*1,‥‥‥計算結果にカンマを入れたい

(2)  計算結果に3桁ごとのカンマを挿入したい!

   但しここでは、結果が出てからICM(インサートカンマ)命令でカンマを
   挿入しません。計算式にちょっと付け足すだけで結果にカンマが入ります。

   [売上帳]
   F=10,10,10,16
   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
      品名   個数   単価      金額
   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
       A   30  300
       B   50  450
       C   60  600
   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

   上記の表で金額を計算します。
   計算式は:C2*C3*1,=C4[実行キー]
                       〜〜
                           ↑
               この部分を計算式に追加します。

   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
      品名   個数   単価      金額
   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
       A   30  300   9,000
       B   50  450  22,500
       C   60  600  36,000
   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

[ MWM | VMUG | takamiya.com | MUGかながわ | 気配り総合メニュー ] この頁の目次TOP ]

MUGかながわにゅーす第23号 「ちょっと気配り」 その3

MTR‥‥‥空白のセルを0で埋めたい

(3)  表のスペースの箇所にすべて0(ゼロ)を入れたい!

[在庫表]
F=10,10,10,10
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
      品名      入庫      出庫    現在庫
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
       A      10             10
       B       5       2      3
       C                      5
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

  計算式は:MTR+0[実行キー]

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
      品名      入庫      出庫    現在庫
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
       A      10       0     10
       B       5       2      3
       C       0       0      5
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

[ MWM | VMUG | takamiya.com | MUGかながわ | 気配り総合メニュー ] この頁の目次TOP ]

MUGかながわにゅーす第26号 「ちょっと気配り」 1994.03.31

AV‥‥‥‥空白データが有る時の平均値

Q.データの中に空白があります。

  それぞれの列の平均を求めたいのですが、このままだと空白も
  1件と数えてしまうために、正しい平均値が求められません。
  どうすればよいのでしょう?

[成績表]              96.12.09  漢  L=0288 C=0074
F=8,10,19,19,19,5
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   氏名   国語   英語   数学
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
二浦 知良   86  100     
竹田 修宏   73        83
モスラ瑠偉        82   62
北川 豪    65   85     
ビスシカク   90   92   85
菊名 新吉        78   90
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

A.空白データを文字に変えれば件数としてカウントしません。

  1.SHU:::Y:$△△△△△:欠席::
             スペース(スペースは桁数分必要)

[成績表]              96.12.09  漢  L=0288 C=0074
F=8,10,19,19,19,5
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   氏名   国語   英語   数学
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
二浦 知良   86  100   欠席
竹田 修宏   73   欠席   83
モスラ瑠偉   欠席   82   62
北川 豪    65   85   欠席
ビスシカク   90   92   85
菊名 新吉   欠席   78   90
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

  2.AV:L:

[成績表]              96.12.09  漢  L=0294 C=0074
F=8,10,19,19,19,5
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   氏名   国語   英語   数学
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
二浦 知良   86  100   欠席
竹田 修宏   73   欠席   83
モスラ瑠偉   欠席   82   62
北川 豪    65   85   欠席
ビスシカク   90   92   85
菊名 新吉   欠席   78   90
   平均   79   87   80
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

  3.SHU:::Y:$欠席:△::

[成績表]              96.12.09  漢  L=0294 C=0074
F=8,10,19,19,19,5
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   氏名   国語   英語   数学
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
二浦 知良   86  100     
竹田 修宏   73        83
モスラ瑠偉        82   62
北川 豪    65   85     
ビスシカク   90   92   85
菊名 新吉        78   90
   平均   79   87   80
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

[ MWM | VMUG | takamiya.com | MUGかながわ | 気配り総合メニュー ] この頁の目次TOP ]

MUGかながわにゅーす第34号 「ちょっと気配り」 1996.03.29

ADD‥‥‥連続加算と減算

下のような表の合計支給額を計算する時に、
(1) 残業手当から通勤手当までを足し合計支給額に仮置きする (C5+C11=/CT)
(2) 合計支給額に基本給を足し減額金を引いて合計支給額に出す (CT+C2-C12=CT)
と2回に分けて計算をしていませんか?
うさぎさんの計算(=/を使った)だけでは、離れた場所を足したり、引いたり
までは出来ません。
1つの計算式で簡単に出来ないかしら・・・?

F=11,8,9,9,9,9,9,9,9,9,9,8,11
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    氏名    基本給  残業時間 残業単価 残業手当 役職手当 家族手当 食事手当 住宅手当 皆勤手当 通勤手当 減額金  合計支給額
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 古川  哲也 350,000        5    1,500    7,500   30,000   12,000   10,000   40,000            18,650
 栗山  浩二 250,000        8    1,500   12,000   25,000   15,000   10,000   40,000            16,280  10,000
 柏木  賢治 200,000       12    1,500   18,000   25,000   10,000   10,000   25,000   10,000    7,850
 加藤  正義 150,000       18    1,500   27,000                     10,000            10,000    6,520
 宇都宮茂夫 150,000       25    1,500   37,500                     10,000            10,000    6,520  10,000
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

こんな方法はいかがですか?
計算式:C2+ADD[C5―C11]―C12=CT:

ADDというのは”指定した範囲の中の数値を連続して足していく”
という特殊関数です。

指定方法は
ADD[ 先頭行番号 ― 最終行番号 ]= L行番号 ,計算場所指定
ADD[ 先頭列番号 ― 最終列番号 ]= C列番号 ,計算場所指定

[ MWM | VMUG | takamiya.com | MUGかながわ | 気配り総合メニュー ] この頁の目次TOP ]

MUGかながわにゅーす第37号 「ちょっと気配り」 1997.01.14

C‥‥‥‥‥罫線データの有る表と文字計算

 横罫線が入った表に、計算式でデータを足したいときに

例1)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~
      元データ          例1
~~~~~~~~~~~~~~~~~~~~~~~~~~~~
          1月    97年1月    ”97年”+C1=C2:
          1月    97年1月
~~~~~~~~~~~~~~97年~~~~~~~~    とすると、横線にもデータが入って
          2月    97年2月    しまいますね。
          2月    97年2月
~~~~~~~~~~~~~~97年~~~~~~~~
          3月    97年3月
          3月    97年3月
~~~~~~~~~~~~~~~~~~~~~~~~~~~~

例2)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~
      元データ          例2
~~~~~~~~~~~~~~~~~~~~~~~~~~~~
          1月    97年1月    そこで、
          1月    97年1月
~~~~~~~~~~~~~~~~~~~~~~~~~~~~    ”97年”+C1=C3,C3<A:
          2月    97年2月                           (半角のA)
          2月    97年2月
~~~~~~~~~~~~~~~~~~~~~~~~~~~~    のように計算式の後に条件を付けます。
          3月    97年3月
          3月    97年3月
~~~~~~~~~~~~~~~~~~~~~~~~~~~~

 この条件は「A より小さければ」という意味ですから、横罫線より半角Aの
 JISコード番号が後の為、条件に当てはまらず、横線にはデータが足さ
 れないということになります。

例3)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~
      元データ          例3
~~~~~~~~~~~~~~~~~~~~~~~~~~~~
          1月    1月10日    ただし、
          1月    1月10日
~~~~~~~~~~~~~~~~~~~~~~~~~~~~    C1+”10日”=C4:
          2月    2月10日
          2月    2月10日    のように足したいデータが後ろに有る
~~~~~~~~~~~~~~~~~~~~~~~~~~~~    場合は通常の計算式のみで大丈夫です。
          3月    3月10日
          3月    3月10日
~~~~~~~~~~~~~~~~~~~~~~~~~~~~

[ MWM | VMUG | takamiya.com | MUGかながわ | 気配り総合メニュー ] この頁の目次TOP ]