sakudaさんより、一筆書きの関係者のみなさんにということで
便利なツールを頂きました。このアドインをExcelに組み込んで
ポップアップメニューを表示させると・・・・・・・・
*
*
*
*
*
*
*
*
*
・・・「一筆書き」「一筆書き修正」「一筆書き準備」が追加されます。
以下、sakudaさんより、説明です。
****************************************************************************************
★アドインのインストール
(1) ツール⇒アドイン⇒参照 から Hitofude.xla をインストールします。
(2) ↑の手順が面倒くさい方はExcelが起動していない状態で
Hitofude.xla を同封の"アドイン関係\アドインインストーラ(含む再)1.1.vbs"
にドラッグ&ドロップしてください。
2.使用法
(1)このアドインをインストールすると、セルのコンテキストメニュー(右クリックメニュー)に
一筆書き、一筆書き修正、一筆書き準備 が現れます。
(2)式を最初に試す場合
A.くまぷーさんのサイトで、試したい式をドラッグして選択状態にして⇒コピー
B.Excleに戻って、現シートの任意のセルを右クリック⇒一筆書き
C.ブックの最後に新規のシートが追加され次のように処理されます
* A1:K1に式がコピー
* A~K列は幅2に調整されます。
* A14にA1の式がテキストとして入ります
* A16:B16 に=LEN(A14)が入り、式の長さが表示されます
(3)式を修正する場合
A.A1セルの式を修正します
B.任意のセルを右クリック⇒一筆書き修正
C.A1セルが全体にコピーされ、A14の文字列化した式も修正されます
(4)自分で式を作成する場合
A.白紙のシートで任意のセルを右クリック⇒一筆書き準備
B.列幅が調整され、A:16B16に=LEN(A14)が入ります
C.A1に式を入れ、右クリック⇒一筆書き修正
これで、A1の式が展開され、A14にA1の式がテキストとして入ります。
★選択部分取り出し
1.ツールの使用目的
くまぷーさんのブログから式をコピーする際、式全体をコピーし損ねる場合があります。
このツールは式の一部をドラッグして選択状態にしておけば、式全体をコピーしてクリップボードに
格納します。
(たまに失敗することもありえますが・・・・)
2.ツールのインストールと使用法
A.選択部分の取り出し.htm を同封の 選択部分取り出し登録.vbs のアイコンに
ドラッグ&ドロップします。
B.この後立ち上げたIEで、テキストを一文字でも選択状態にして、右クリックすると、
メニューに "選択部分の取り出し" が登場します。
C.右クリックメニューで "選択部分の取り出し" を選択すると、一部選択されている
式の全体がクリップボードに入ります。
(例えば、 > =LEFT("*",(ROW()-6)^3*(COLUMN()-6)=(ROW()-6)*(COLUMN()-6)^3) のような引用された部分でもOKです)
D.選択部分の取り出し.htm が登録されている状態で、再度ファイルを 選択部分取り出し登録.vbs
にドラッグ&ドロップすると、登録が削除されます。
注.コンテキストメニューへの登録はレジストリの操作を伴いますので、使用は自己責任でお願いします。
以上
ダウンロードはこちら より。
トラブルの際の連絡先は
[email protected]
**************************************************************************************
sakudaさん、有り難うございました~(^.^/~~~
>2日ぐらいは、70字切り程度で抑えておいた方が、いろいろな方の
>解答が出るのではないでしょうか?
・・・というご意見を頂戴している。その通りかもしれない。
初日は文字数に関するコメントは一切禁止で、参加表明に
止めておいた方がいいのかもしれない。この辺りのことを
どうするかは解答を作るよりもはるかに難しい。
幸い、次回の出題者は悪児さんなので、コメントに関する
ルール(次回用)も提示していただけるとありがたい。m(__)m
【解答・Excel49文字】
さて、Excel49文字の解答を示そう。実は最初は59文字であった・・・
・・・Modeを使った式・・・
=MODE(ROW(),COLUMN(),12-ROW(),12-COLUMN())
・・・は下図のようになる
*=
*
*
*
*
よって・・・
=IF(ISNA(MODE(ROW(),COLUMN(),12-ROW(),12-COLUMN())),"","*")
これはこれできれいな式なのでもう減量の余地は無いかと思ったが・・・
やってみるとなんと12-ROW()か12-COLUMN()のどちらかを定数6と換えても
ちゃんと動くのだ!!
=IF(ISNA(MODE(ROW(),COLUMN(),12-ROW(),6)),"","*")
【解答・三四郎43文字・・・ズル】
=If(Mode(Row(A1),Col(A1),12-Col(A1),6),"■")
上式を使うと下図のようになる。
*
*
*
*
三四郎はExcelと違い、エラーが赤で表示されるので
セルの背景を赤にして誤魔化したというわけだ。