0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

Google スプレッドシートで全角空白 半角空白を禁止する

Posted at

スクレイピングで必須の設定ファイル。
最近は店舗名やログインIDなどの設定情報をエクセルではなく、スプレッドシートで管理することが多いです。
全角空白の入力を禁止することになりました。

スプレッドシートで難しい入力制限をするにはデータの入力規則→カスタム数式を使います。

「データ」→「データの入力規則」→「カスタム数式」を使います。
今回は全角空白のみを禁止したいので
REGEXMATCH関数とto_text関数を使います。(半角空白を禁止するときも同じ)

こちらのページが詳しいです。
https://qiita.com/Hiroyuki1993/items/07b71a161b68be447ea7

「データ」→「データの入力規則」→「カスタム数式」を使います。
image.png

カスタム数式

・以下はC列にカスタム数式で入力規則を設定する例です。
 コピペするときは列を変えてください。
・セル範囲にC列を選択していればカスタム数式の引数セルはC1だけでよいです。
・REGEXMATCH関数の引数はテキストなので、to_text関数で数値をテキストに変換します。
これがないと数値だけのセルに入力規則が効きません。
・全角空白や半角空白に正規表現の \s は使えません。キーボードで全角空白や半角空白を入力してください。

全角空白のみ禁止

セル範囲でC列を選択後、以下の式をカスタム数式の右側に入力して下さい。
C列を全角空白禁止とします。

カスタム数式
=REGEXMATCH(to_text(C1),"^[^ ]*$")
[^ のあとに全角空白が入力されています。

半角空白のみ禁止

セル範囲でC列を選択後以下の式をカスタム数式の右側に入力して下さい。
C列を半角空白禁止とします。

カスタム数式
=REGEXMATCH(to_text(C1),"^[^ ]*$")
[^ のあとに半角空白が入力されています。

半角空白・全角空白禁止

セル範囲でC列を選択後以下の式をカスタム数式の右側に入力して下さい。
C列を半角空白全角空白禁止とします。

=REGEXMATCH(to_text(C1),"^[^  ]*$")
[^ のあとに半角空白と全角空白が入力されています。

自分は業務でスクレイピングをしているのですが、設定ファイルが
エクセルからスプレッドシートに切り替わってきています。
スプレッドシートの正規表現による入力規則の出番が増えそうです。

0
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?