いきなり答える備忘録

Google Workspace・Microsoft 365・LibreOfficeなどに関するメモ

Googleスプレッドシート

(Gスプレッドシート)「行」と「列」どっちがどっちか区別する

Googleスプレッドシートにおける行と列の区別をつける方法についてです。 これはGoogleスプレッドシート自体の機能により確認することができます。 シートの上部または左に並んでいる見出し(英字、数字の部分)を右クリックすれば、メニューの内容から行と…

(Gスプレッドシート)セル内で改行されているデータを縦のセルに並べる

Googleスプレッドシートで、セル内で改行されている値を縦1列のデータにする方法についてです。 SPLIT関数やFLATTEN関数を使って、セル内改行により並んでいるデータを縦1列のセルに配置し直すことができます。 手順 単純な例 グループとなる列が存在する例 …

(Gスプレッドシート)プレフィックスとサブネットマスクの変換

Googleスプレッドシートでのプレフィックスとサブネットマスクの変換、言い換えればサブネットマスクのプレフィックス長とアドレス形式の間における変換です。 プレフィックスとサブネットマスクの変換は表引きするのが確実ですが関数式による変換も可能です…

(Gスプレッドシート)ピボットテーブル全体を削除する

Googleスプレッドシートで、作成したピボットテーブルの全体を一括削除する方法についてです。 ピボットテーブル内の最も左上のセルを選択した状態でDeleteキー(またはBackspaceキー)を押すとピボットテーブル全体が削除されます。手順 画像内のF2:J8の範…

(Gスプレッドシート)値の出現回数のランキングを作る

Googleスプレッドシートで、データに含まれる値の出現回数のランキングを作る方法についてです。 つまりはグループ化してカウント集計してカウント値の降順で並べ替えるわけですが、ここではいくつかの方法を試してみます。 関数やピボットテーブルを利用し…

(Gスプレッドシート)マイナスの時間(時刻)から時・分・秒を取得する

Googleスプレッドシートで、マイナスの時間(時刻)から時・分・秒の値を取得する方法についてです。 値はいずれもマイナスの値として取得するものとします。 「=SIGN(時間)*HOUR(ABS(時間))」といった式によりマイナスの時間(時刻)からマイナスの時・分・…

(Gスプレッドシート)行列のトレース(対角成分の和)を求める

Googleスプレッドシートで、行列のトレース(tr=正方行列の対角要素の和)を求める方法についてです。 「=SUM(ARRAYFORMULA(行列*MUNIT(次数)))」という式で行列のトレースが求められます。手順 画像ではB2:D4の範囲に3行3列の行列が入力されています。 これ…

(Gスプレッドシート)マイナスの時間の入力・計算・表示

Googleスプレッドシートでのマイナスの時間(時刻)の扱いについてです。 Googleスプレッドシートではマイナスの時間(時刻)を入力することができます。計算もできます。 計算結果(加減算やSUM関数など)にマイナスの符号が反映されない場合があるので、そ…

(Gスプレッドシート)数値の小数部分を求める

Googleスプレッドシートで、数値の小数部分(小数点以下の部分)を求める方法についてです。 符号を含めて(マイナスの数値についてはマイナスの値として)得るものとします。 「=数値-TRUNC(数値)」で数値の小数部分を求めることができます。手順 画像ではB…

(Gスプレッドシート)時間を考慮して経過した満日数を求める

Googleスプレッドシートで、日付の差だけではなく時刻を含めて考え、満何日経過したのかを求める方法です。 つまり24時間経過したら1日、48時間経過したら2日……と数える数え方です。 「=INT(終了日時-開始日時)」で、期間の間に丸何日経過しているかを求めら…

(Gドキュメント)表の行の高さを縮める

Googleドキュメントで作成された表の、行の高さを標準より低くする方法についてです。 ひいては表そのものの高さを縮めることができます。 対象となる行(横1列)を選択し、右クリックして「表のプロパティ」を選択します。 ペイン内のメニューから「配置」…

(Gスプレッドシート)日付が年度の何日目か求める

Googleスプレッドシートで、ある日付がその年度の何日目かを求める例です。単純なようで多くの要素を含んだ計算です。 なお、年度開始日(年度が4月始まりの場合4/1)を1日目とします。 EDATE関数とDATE関数を組み合わせて、日付が年度の何日目なのかを求め…

(Gスプレッドシート)NOW関数の結果はシート内でも一致しない

GoogleスプレッドシートのNOW関数の出力についてです。 NOW関数の戻り値は、(再)計算の際にシート内の書き換え順序に沿って少しずつ違ったものになります。つまりシート内の各セルにおいて一般に一致しません。手順 シート内の20個のセルに「=NOW()」とい…

(Gスプレッドシート)日付がその年の何日目か求める

Googleスプレッドシートでの関数の簡単な応用例です。ある日付が、その年の何日目にあたるのかを求めます。 なお1月1日を1日目とします。 DATE関数を使って、ある日付がその年の何日目であるかを求めることができます。手順 B列にいくつかの日付が入力されて…

(Gスプレッドシート)チェックボックスで選択されたものの数値を合計する

Googleスプレッドシートで、チェックボックスのチェックが入っている項目について、数値の合計を求める方法についてです。 SUMIF関数を使って、チェックボックスのチェックが入っている項目に対応する数値の合計を求めることができます。手順 ここではB列に…

(Gスプレッドシート)TO_TEXT関数で数値・日付時刻を見たままの文字列にする

Googleスプレッドシートで値を文字列に変換するときに便利なTO_TEXT関数についてです。 TO_TEXT関数を使うことで、参照先のセルの値を見た目どおりの文字列にすることができます。 参照先のセルの表示形式の設定を変更すると、戻り値の文字列も変化します。…

(Gスプレッドシート)文字列中の特定の文字列をカウントする

Googleスプレッドシートで、文字列に特定の部分文字列がいくつ含まれているかカウントする方法です。SUBSTITUTE関数とLEN関数を使う方法が有名ですが、ここでは少し変わった方法を試しています。 なお部分文字列は何文字でもいいですが、1文字の場合はより優…

(Gスプレッドシート)クロス表を縦持ちに変換する

Googleスプレッドシートでクロス表を縦持ちのデータに置き換える、いわゆるアンピボットです。ここでは関数で実行してみます。 なお横持ち→縦持ち変換と異なり、横方向の見出しも抽出するので出力は3列(以上)となります。 FLATTEN関数を使ってクロス表を縦…

(Gスプレッドシート)判定結果表示用のチェックボックスを作る

Googleスプレッドシートで、他のセル範囲を参照して判定結果(チェックあり/なし)を表示するだけのチェックボックスを設置する例です。 チェックボックスのあるセル内に「TRUEまたはFALSEを返す数式(「=」で始まる)」を入力すると、その式の結果に応じて…

(Gスプレッドシート)日付・時刻と文字列をつなげる

Googleスプレッドシートで、日付や時刻の値と文字列を連結した文字列を取得する方法についてです。 TEXT関数を使う方法もありますが、ここではTO_TEXT関数を使う方法を試してみます。 TO_TEXT関数を使って日付や時刻と文字列を見たまま連結した文字列を取得…

(Gスプレッドシート)VALUE関数は全角数字を数値に変換しない

GoogleスプレッドシートのVALUE関数に全角数字を渡した場合の結果についてです。 Excelとは異なる結果になります。 Googleスプレッドシートで「=VALUE(全角数字)」とするとエラーになります。 一応「=VALUE(ASC(全角数字))」で変換できます。手順 画像は、B…

(Gスプレッドシート)日付と時刻をつなげる

Googleスプレッドシートで、日付の値と時刻の値があるときにそれらをつなげた1つの日付時刻を取得・表示する方法についてです。 「日付+時刻」のように2つの値を「+」で結ぶことで、それらを連結した日付時刻を取得できます。手順 B列には日付が、C列が時刻…

(Gスプレッドシート)横線だけの表を作る

Googleスプレッドシートで横線(水平線)だけの表、言い換えれば縦線のない表を作る方法についてです。 なんてことはありませんが、Excelのような書式設定ダイアログがなく枠線(罫線)の部分クリアもないなど操作感が異なるため気づきにくいかもしれません…

(Gスプレッドシート)キーボードのキーで再計算させる

Googleスプレッドシートには再計算のショートカットがありませんが、キーを押すたびに再計算させることはできます。 DeleteキーやBackspaceキーで式の再計算ができます。 すべてのシートで再計算されます。手順 再計算で値が変わる式の例として、4種の関数を…

(Gスプレッドシート)日付が同じ週か判定する

Googleスプレッドシートで、2つの日付が同じ週に属しているかを判定する方法についてです。 WEEKNUM関数を使うのが手っ取り早いですが、年をまたいだ日付の判定に難がありますので別の方法を試してみます。 WEEKDAY関数を使って、その日付が属する週を区別す…

(Gスプレッドシート)文字列の先頭/末尾の空白だけ削除する

Googleスプレッドシートで、文字列の先頭に並ぶスペース(全角と半角は混在可)や、末尾に並ぶスペース(同様)を削除する方法についてです。 TRIM関数では半角スペースしか削除できず、一方で文字間の半角スペースまで削除してしまいますので、別の方法を試…

(Gスプレッドシート)整数値の下n桁を抽出する

Googleスプレッドシートで、整数値の下n桁を数値として取得する方法についてです。 数値がマイナスである場合にプラスの値を返す場合と、マイナスの値を返す場合の両方の例を試してみます。 MOD関数やROUNDDOWN関数などを使い、数値の下n桁を取得することが…

(Gスプレッドシート)セル内の改行だけの行を削除する

Googleスプレッドシートで、セル内にある「改行だけの行」をなくす方法についてです。関数を使う方法とメニューを使う方法を試してみます。 関数による方法、あるいは「検索と置換」メニューによる方法によりセル内の余分な改行を削除することができます。 …

(Gスプレッドシート)1文字おきに特定の文字に置き換える

Googleスプレッドシートで、文字列を1文字おきに別の字に置き換える、言い換えれば偶数番目(奇数番目)の文字だけを置き換える方法についてです。使用例として1文字おきに伏字にすることができます。 REGEXREPLACE関数を使って、文字列中の偶数番目または奇…

(Gスプレッドシート)文字列がリスト内の単語を含むか判定する

Googleスプレッドシートで、ある文字列が、リストで定義された複数の単語(言葉)のいずれか(またはすべて)を含んでいるかどうかを判定する方法についてです。 利用例としては、いわゆるNGワードを含むかどうかの判定が挙げられます。 REGEXMATCH関数等を…