Googleスプレッドシートのセルのデータの長さを制限するにはどうすればよいですか?


回答:


6

次の小さなスクリプトは、セル入力を5つの位置に制限し、余剰分をメモとしてセルに追加します。

コード

function onEdit(e) {
  var limit = 5;
  if(e.value.length > limit) {
    e.range.setValue(e.value.substring(0, limit) + "...");
    e.range.setNote("Remaining text was: \n....." + e.value.substring(limit));
  }
}

説明しました

それぞれの編集ごとにonEdit(e)トリガーが起動され、セルの値(e.value)が5より大きいかどうかをチェックするたびに、アクティブセルは5桁(setValuesubstring(0,5))以下の新しい値を受け取ります。テキストの残りの部分はメモとして追加されます。

スクリーンショット

ここに画像の説明を入力してください

サンプルファイルを作成しました:セル入力
制限するスプレッドシートメニューの[ツール]> [スクリプトエディター]にコードを追加します。スクリプトエディターで、コードを貼り付け、保存ボタンを押します。



1

次の数式は、セル入力を10桁に制限します。

値の長さを制限するセルがA2で長さの制限が10の場合、カスタム数式は

=LEFT(A2,10)

例:

例1の式

結果:

例1の結果

できました。しかし、結果の後に省略記号を追加したい場合は、次のように編集できます。

=CONCATENATE(""&LEFT(A2,10)&" ...")

結果:

例2の結果


0

また、カスタム数式でデータ検証を使用して、単語数によってセルの長さを制限することもできます(セル内の単語の最大数を設定するため)。

場合A1は、我々は単語数によって制限されている細胞であり、そして10は、単語の最大数で、その後、式は次のとおりです。

= COUNTA(SPLIT(A1、 ""))‹= 10

参照:


1
基本的にはこの他の答えと同じですが、数式が動いています。
ルベン・

実際、その答えは文字列を文字数で制限することであり、私が共有した式は単語で制限します。しかし、はい、はるかに複雑です。
GrapesInASalad 16
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.