« 2017年12月 | トップページ | 2018年2月 »

Excel で「うるう年」を見つける。

この記事は自分用の覚書です。
(Windows 10 Pro 64ビット + Excel2016 Office365 Business サブスクリプション バージョン1712(ビルド8827.2148))

■考え方
ある年の2月末日が 29 日なら、その年は「うるう年」である。

月末の日にちとは、「翌月の一日(ついたち)の前日」といえる。
3月1日の1日前が2月29日であるかどうかを調べれば、その年がうるう年かどうかがわかる。

数式でいえば、ある年の3月1日(シリアル値)-1 の答えが2月29日であれば「うるう年」。

■処理
日にちの処理には、DATE 関数や DAY 関数など(場合によって、YEAR 関数や MONTH 関数も)を使う。

一つのセルの中でこれらの関数をネストさせて数式を作ると、パッと見て何をしているのかが理解しづらい数式になる。

作業列を使って計算の過程を分けることで、全体として何をしているのかをわかりやすくできる。

1.西暦(数字4桁)を入力する。
ある日にちから YEAR 関数で西暦を抜き出すやり方もある。

2.2月末日(シリアル値)をつくる。
1. の値を DATE 関数の引数に使い、3月1日(シリアル値)をつくって、 1 を引く。

3.DAY 関数で、2月末日の「日」の値を抜き出す。
2.を DAY 関数の引数にする。

4.IFS 関数(あるいは IF 関数)で、3. が 29 であれば「うるう年」とする式をつくる。

Uruudosi_hantei_2

=IFS(C22=29,"うるう年",28,"")

の式は書き方としては、

=IFS(C22=29,"うるう年",TRUE,"")

でも結果は同じになる。
前述の条件を満たさないときは TRUE が成り立つとしてセルが非表示になる。

ただし、この場合は2月末日を判定しているので、条件としては「29である」か「28である」の二通りしかない。
答えが二通りしかないのであれば、

・「29であれば「うるう年」と表示する」、「それ以外であればセルを非表示にする」

と記すよりは、

・「29であれば「うるう年」と表示する」、「28であればセルを非表示にする」

と書いたほうが、どんな条件にもとづいて処理をしているのかがより具体的で理解しやすくなると考えてそうしてある。

| | コメント (0) | トラックバック (0)

Excel で行高を固定して入力する。

この記事は自分用の覚書です。
(Windows 10 Pro 64ビット + Excel2016 Office365 Business サブスクリプション バージョン1711(ビルド8730.2175))

■やりたいこと
セルの書式を「折り返して全体を表示する」にしてあっても、値の貼り付けや入力時に行高が高く変わらないようにする。

■手順
値貼り付けや入力をする前に「行の高さ」を指定しておく。

行を右クリックして「行の高さ」を選択し、固定したい行の高さを入力する。
標準では 18 になっている。同じ 18 で固定したい場合は、あらためて 18 を入力する。

| | コメント (0) | トラックバック (0)

Excel2016 でユーザー設定リストへの登録

この記事は自分用の覚書です。
(Windows 10 Pro 64ビット + Excel2016 Office365 Business サブスクリプション バージョン1711(ビルド8730.2175))

■現象
『ユーザー設定リスト』の「リスト項目」欄に、登録したいリストをコピー貼り付けして「追加」ボタンをクリックすると、次の警告メッセージが表示されてリストを全部登録できない。

「ユーザー設定リストの最大長を超えています。最初の 255 文字のみ保存されます。」

■対処方法
・「リスト項目」欄にコピー貼り付けしない。
・「追加」ボタンをクリックしない。

1. ワークシート上で任意の「列」にリスト項目を用意しておく。
「行」(横)に並べると登録できない。

2. 1. を範囲選択しておいてから『ユーザー設定リスト』の画面を呼び出すか、『ユーザー設定リスト』の画面で「インポート」ボタンの左にあるボタンを押して 1.  の範囲を指定する。

3. 「リストの取り込み元範囲」が正しいことを確認して「インポート」ボタンをクリック。
これでユーザー設定リストが登録される。

OK ボタンをクリックしていって画面を閉じる。

| | コメント (0) | トラックバック (0)

« 2017年12月 | トップページ | 2018年2月 »