Googleスプレッドシートですべてのテキストを大文字に変換する


11

一部のデータを収集するために他のユーザーと共有しているスプレッドシートがあります。各人は、(あると仮定して)単一のキャラクターをセルの範囲のいずれかに配置しています。

これらのセルを大文字に変換するにはどうすればよいですか?

=UPPER()各セルでの使用はスターターではないように見えます。なぜなら、セルが入力したものによって上書きされるからです。


誰かがこの答えを拡張してくれませんか?具体的には、スクリプトを作成して保存した後、Googleスプレッドシートの特定のセル範囲でスクリプトを実行するにはどうすればよいですか?
tomh 2018

回答:


12

入力を自動的に大文字に変換するスクリプトを次に示します。

function onEdit(e) {
  if (typeof e.value != 'object') {
    e.range.setValue(e.value.toUpperCase());
  }
}

スプレッドシートから、[ツール]> [スクリプトエディター]に移動します。上記のコードをコードウィンドウに配置し(事前に入力されているものをすべて置き換えます)、保存します。


大文字単一文字のエントリを適用したい場合は、カスタム式を使用してデータ検証を使用できます

=regexmatch(A1,"^[A-Z]$")

これは、範囲の左上隅がA1であり、ラテンアルファベットの文字が必要であると想定しています。正規表現^[A-Z]$は、次のことを意味します。AZの範囲の1文字。文字列の終わり。


誰かがこの答えを拡張してくれませんか?具体的には、スクリプトを作成して保存した後、Googleスプレッドシートの特定のセル範囲でスクリプトを実行するにはどうすればよいですか?
tomh 2018

@tomhこのスクリプトはスプレッドシート全体で機能します。使用することを検討しました=ARRAYFORMULA(UPPER(A:Z)か?
user0

こんにちは-スクリプトを実行して、シート内のハイライト表示されたセルの範囲に適用するための段階的なプロセスを求めています。理想的にはメニューコマンドから
tomh

@tomhこのスクリプトは機能しましたか?
user0

いいえ。Casesというアドオンを使用して同じ効果を実現しました。でも、シート内の一連のセルにスクリプトを適用する方法を知りたいのですが、この投稿ではそれが役立つ回答になると思います。
tomh 2018

1

これが欲しいです

スクリプトのこの行を変更するだけです...

ui.createMenu( 'カスタムメニュー')

...これに...

ui.createMenu( 'ケース変更')

...あなた自身のために。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.