ナンプレお助けマクロ
《ナンプレ(数独)とは》
ナンプレとは、「9列・9行・9ブロック」で構成された表の各行、各列、各ブロックに
それぞれ1〜9の数字を重複しないではめ込むゲームです。
《ナンプレお助けマクロ作成の動機》
@難問のナンプレ(数独)をすばやく解くための補助的機能を持ったツールの作成
Aエクセルマクロの構文の勉強にはナンプレルールは格好の材題
《お助けマクロの機能》
@このお助けマクロは、エクセルマクロを使ったプログラムですが、1個(9×9ブロック)
の答えすべてを出してくれるプログラムではありません。
あくまで答えを見つけやすく導くだけのものです。
Aエクセルマクロの知識の乏しい当サイトオーナーの私が作成しており、出来は決して
よくありません、改良すべき点は多々あると思います。
《エクセル表のダウンロード》
次のエクセル表をご自分のパソコンに保存してお使いください。
suudokumacro9b.zip
《事前準備及び操作方法》
1.パズルの数字をブロック左表に入れる(円数字でなく普通の数字)
2.エクセル表中央にある「スタートボタン」をクリック
※マクロ実行の結果
→ 円数字に変換 スタートパズル面を右面に自動コピー
3.「候補自動挿入ボタン」をクリック
※マクロ実行の結果
→数字が確定しているセル以外のセルに候補数字を自動挿入
4.上記3の操作結果などから数字を確定できるセルを探し、○で囲んだ数字を確定する。
(同一セル内の他の○で囲んだ数字はカーソルで削除)
4-2 確定した数字を「K1」に入れる。(○で囲んだ数字ではない普通の数字)
自動的に「K2」に○で囲んだ数字が入る。(「k1」に1を入れれば「k2」に@が入る。)
「同じ数字に着色ボタン」をクリック
※マクロ実行の結果
→ 数字を確定したセル以外のセル内の同じ数字を黄色に着色
(数字が着色されただけで、セルには数字が残っていいるので、下記5の手順で削除)
◇候補数字の絞り込み、確定作業は手作業
例えば、縦一列桝、横一列桝、あるいは正方形桝の9セルの中の二つのセルに
@とEという数字が入っていた場合、この二つのセルのいずれかに@又はEが
入るので、同じ桝の他のセル上にある@とEは手作業で削除する。
同様に例えば@C、@CE、@CEのパターンの場合は、この3セルに@CEの
いずれかが入るので、同じ桝の他のセル上にあるこれらの数字は削除する。
(下記7にも記述。)
5.上記4-2の操作の後
「他の数字削除ボタン」をクリック
※マクロ実行の結果
→数字確定セル以外のセル内の同じ数字(黄着色数字)が削除される。
6.数字を確定できるセルを探すための作業
確定できた数字を「K1」に入れる。(普通数字)
「k2」に「k1」に入れた○で囲んだ数字が自動的に入る。
「関係セル着色ボタン」をクリック
※マクロ実行の結果
→ 確定した数字が関係するセルを着色され、確定できるセルが見つけやすくなる。
7.4-2〜6の操作を繰り返し、数字を確定していく。
「K1]に確定数字を入れ、次の順にクリック
「同じ数字に着色ボタン」→「他の数字削除ボタン」→「関係セルに着色ボタン」
この操作で例えばAとCの入ったセルが2つあれば、この2つのセルに必ずA又はCが
入るので、他の関係するセルにA又はCがあれば手動で消す。このような要領で数字を
確定していく。
数字が確定すれば「K1」に数字を入れ、上の三つのボタンを順にクリック。
8.次のパズルに移行するとき
「全桝クリアーボタン」をクリック
※マクロ実行の結果
→ 全桝のセル内の数字と着色をクリアー。
※下記の本「エクセルマクロ辞典」は、難しいエクセルマクロがとても分かり易く
まとめられており、初心者には必携の本になると思います。
ナンプレとは、「9列・9行・9ブロック」で構成された表の各行、各列、各ブロックに
それぞれ1〜9の数字を重複しないではめ込むゲームです。
《ナンプレお助けマクロ作成の動機》
@難問のナンプレ(数独)をすばやく解くための補助的機能を持ったツールの作成
Aエクセルマクロの構文の勉強にはナンプレルールは格好の材題
《お助けマクロの機能》
@このお助けマクロは、エクセルマクロを使ったプログラムですが、1個(9×9ブロック)
の答えすべてを出してくれるプログラムではありません。
あくまで答えを見つけやすく導くだけのものです。
Aエクセルマクロの知識の乏しい当サイトオーナーの私が作成しており、出来は決して
よくありません、改良すべき点は多々あると思います。
《エクセル表のダウンロード》
次のエクセル表をご自分のパソコンに保存してお使いください。
suudokumacro9b.zip
《事前準備及び操作方法》
1.パズルの数字をブロック左表に入れる(円数字でなく普通の数字)
2.エクセル表中央にある「スタートボタン」をクリック
※マクロ実行の結果
→ 円数字に変換 スタートパズル面を右面に自動コピー
3.「候補自動挿入ボタン」をクリック
※マクロ実行の結果
→数字が確定しているセル以外のセルに候補数字を自動挿入
4.上記3の操作結果などから数字を確定できるセルを探し、○で囲んだ数字を確定する。
(同一セル内の他の○で囲んだ数字はカーソルで削除)
4-2 確定した数字を「K1」に入れる。(○で囲んだ数字ではない普通の数字)
自動的に「K2」に○で囲んだ数字が入る。(「k1」に1を入れれば「k2」に@が入る。)
「同じ数字に着色ボタン」をクリック
※マクロ実行の結果
→ 数字を確定したセル以外のセル内の同じ数字を黄色に着色
(数字が着色されただけで、セルには数字が残っていいるので、下記5の手順で削除)
◇候補数字の絞り込み、確定作業は手作業
例えば、縦一列桝、横一列桝、あるいは正方形桝の9セルの中の二つのセルに
@とEという数字が入っていた場合、この二つのセルのいずれかに@又はEが
入るので、同じ桝の他のセル上にある@とEは手作業で削除する。
同様に例えば@C、@CE、@CEのパターンの場合は、この3セルに@CEの
いずれかが入るので、同じ桝の他のセル上にあるこれらの数字は削除する。
(下記7にも記述。)
5.上記4-2の操作の後
「他の数字削除ボタン」をクリック
※マクロ実行の結果
→数字確定セル以外のセル内の同じ数字(黄着色数字)が削除される。
6.数字を確定できるセルを探すための作業
確定できた数字を「K1」に入れる。(普通数字)
「k2」に「k1」に入れた○で囲んだ数字が自動的に入る。
「関係セル着色ボタン」をクリック
※マクロ実行の結果
→ 確定した数字が関係するセルを着色され、確定できるセルが見つけやすくなる。
7.4-2〜6の操作を繰り返し、数字を確定していく。
「K1]に確定数字を入れ、次の順にクリック
「同じ数字に着色ボタン」→「他の数字削除ボタン」→「関係セルに着色ボタン」
この操作で例えばAとCの入ったセルが2つあれば、この2つのセルに必ずA又はCが
入るので、他の関係するセルにA又はCがあれば手動で消す。このような要領で数字を
確定していく。
数字が確定すれば「K1」に数字を入れ、上の三つのボタンを順にクリック。
8.次のパズルに移行するとき
「全桝クリアーボタン」をクリック
※マクロ実行の結果
→ 全桝のセル内の数字と着色をクリアー。
※下記の本「エクセルマクロ辞典」は、難しいエクセルマクロがとても分かり易く
まとめられており、初心者には必携の本になると思います。