列全体に数式を適用する


96

列Aから列Bにすべての郵便番号を次の式で再コード化しようとしています。

=TEXT(A1,"00000")

このような:

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

列Bのすべてのセルが上記の式を使用して変換されるようにします。しかし、4万行以上あるので、数式をドラッグして列B全体に適用することはできません。

この問題を解決するために使用できる式はありますか?

回答:


89

私はそれはより最近の機能だと思いますが、私にとってはうまくいきます:

ハイライトされたセルの右下の四角をダブルクリックすると、ハイライトされたセルの数式がコピーされます。

それが役に立てば幸い。


20
これが質問に対する正解です。「ドラッグインジケーター」(右下隅)をダブルクリックすると、数式がすべてのセルにコピーされます。最初に列データをクリアし、式を1つにのみ適用してください。上記の「ArrayFormula」の答えは、多くのセルを1つの数式に適用できるようですが、これはOPが望んでいたことではありません。
Thanasis Kapelonis、2016年

3
共有いただきありがとうございます。それは私にとってはうまく機能しますが、基本的にまったく同じ数式をすべてのセルにコピーするメソッドとは異なり、ArrayFormulaはより動的で、より簡単にプログラムできるため、ArrayFormula関数を使用することを好みます。
Shahab Yarmohammadi 2016年

3
@ThanasisKapelonis、データをクリアする必要はありません。ドラッグインジケーターをダブルクリックするだけで、後続のすべての行に数式が適用され、各行の対応する列で各プレースホルダーのデータを利用できます。データが欠落している場所で停止します。Brett Suttonが示すように
dresh

2
この回答を行うにはデータが多すぎて失敗し、ページをリロードする必要があります。
ダニエルライアン

1
これは問題を解決するための貴重なヒントになるかもしれませんが、良い答えも解決策を示しています。意味を示すサンプルコードを提供するように編集してください。または、代わりにコメントとしてこれを書くことを検討してください。
Toby Speight 2018

58

運がいいと思います。B1で入力してみてください:

=text(A1:A,"00000")

(非常によく似ています!)しかし、Enterヒットする前にCtrl+ Shift+ Enter


32
Ctrl + Shift + Enterを押すと、数式がで囲まれArrayFormula(…)ます。
binki 2014

2
@pnutsどういう意味ですか?これも私にはうまくいきません。ArrayFormula(
JayPex、2015

4
@pnuts多分これは昨年変更されていますが、ArrayFormulaはOPからの画像として列Bまで数式を拡張しません。私にとっては、選択したセルの値を入力するだけです。
Assimilater 2015

11
共有いただきありがとうございます。私にとっては本当にうまくいった。皆さんが見逃している可能性があることの1つは、私が数秒間苦労したB1:Bの部分だと思います。関数が機能するためには、単一の列、たとえばB1を数式の列B1:Bの配列に置き換える必要があります。断然、これは最良の方法であり、最も動的です。
Shahab Yarmohammadi 2016年

4
これも私にとってはうまくいきました。コメントの説明をありがとう。さらに私をつまずかせたのは、下のセルがすべて空でなければならないということでした。上書きされるだけだと思いました。
LOAS 2016年

52

他の回答のいくつかは古くなっているようですが、私にとってこれはうまくいきました:

  1. コピーするテキスト/数式のセルをクリックします
  2. コピー先の最後のセルをShift +クリック
  3. Ctrl + Enter

(宛先セルが空でない場合、これはテキストを置き換えることに注意してください)


7
MacではCMD + Enterで動作します。
StapleGun

4
2019年のこの最良の答え
ハッピーバード

1
この回答ははるかに広い範囲の数式で機能し、受け入れられる回答になるはずです
フレア

1
一度に1つの列でのみ機能しますが、適切に機能します。あなたが言ったように、あなたが言ったように、これを多くのもののためにすばやく終わらせたいならCtrl+Shift+Down、現在の列の一番下までずっと選択します次の列。Ctrl+EnterUp, Right, [Down]
Adam Barnes

2020年には魅力のように機能します。ありがとうございます。
nxmohamad

8

さんが言ってみましょうあなたは、文字列の配列で何かを代用したいとあなたがあなたの全体のシートに、貼り付けるコピーを実行する必要はありません

例としてこれを見てみましょう:

  • 列「A」の文字列配列:{apple、banana、orange、...、avocado}
  • 「a」の文字を「x」に置き換えて、次のようにします:{xpple、bxnxnx、orxnge、...、xvocado}

この数式を列(配列)全体にクリーンでエレガントな方法で適用するには、次のようにします。

=ARRAYFORMULA(SUBSTITUE(A:A, "a", "x"))

2D配列でも機能します。

=ARRAYFORMULA(SUBSTITUE(A2:D83, "a", "x"))

8

別の解決策を見つけました:

  • 列の最初の3つまたは4つのセルに数式を適用する
  • Ctrl+ C最後の行の1つにある数式(最初の行をコピーすると機能しません)
  • 列ヘッダーをクリックして列全体を選択します
  • Ctrl+ Vを押して、以下のすべてのセルに貼り付けます

2
これは、ダブルクリックよりも確実に機能するようです。ありがとう!
イヴァン

4

これは、列のセルをすばやく(切り取りやコピーせずに)上書きしたい人のためのものです。これはセルボックスをダブルクリックするのと同じですが、ダブルクリックとは異なり、最初の試行後も機能します。

  1. 下にコピーする列セルを選択します
  2. Ctrl+ Shift+ を押して、下のセルを選択します
  3. Ctrl+ Enterを押して、最初のセルの内容を下のセルにコピーします

ボーナス:

最下部のコンテンツに移動するためのショートカット(コピーを再確認するため)はCtrl+ です。戻るにはCtrl+ を使用できますが、上の行が固定されている場合はEnter、数回押す必要があります。


1
これは最もまっすぐなハックです。ありがとう!
ソピアアルフレッド

0

明確にするために、ドラッグインジケーターを使用すると、特定の行の隣接するセルに値がある間は、列の下のセルの値のみがコピーされます。ドラッグ操作で隣接する空白のセルが見つかるとすぐに、数式のコピーが停止します。

。例えば

1,a,b
2,a
3,
4,a

上記がスプレッドシートの場合、「b」セルでダブルクリックドラッグインジケーターを使用すると、行2は塗りつぶされますが、行3または4は塗りつぶされません。


1
「ドラッグインジケーターをダブルクリック」を使用してExcelのフィルターされたセットの行に数式を適用しようとすると、行のシリアル番号がジャンプするたびに停止します。1、2、3が順番に表示されている場合は数式が適用されますが、行がない場合は適用されます。行番号の後に5が表示されます。3(フィルタリングのため)、次に行番号。5は数式を取得しません。その場合、行番号のセルからコピーする必要があります。3、それを行番号に貼り付けます。5次に、同じダブルクリックを使用します。そう、Sucksに勝る。
dresh

これは問題を解決するための貴重なヒントになるかもしれませんが、良い答えも解決策を示しています。意味を示すサンプルコードを提供するように編集してください。または、代わりにコメントとしてこれを書くことを検討してください。
Toby Speight 2018

0

Ctrl + Shift + Down + Dを使用して、列のすべてのセルに数式を追加することもできます。

コピーする数式/数式のセルをクリック/ハイライトし、Ctrl + Shift + Down + Dを押すだけで、数式が各セルに追加されます。



-2

コピー元のセルの右下隅(他の方法ではドラッグするボックス上のポイント)をダブルクリックして列を埋めると、列全体に適用されます。

注意:これは、フィルターを適用している場合や、下のセルにすでに何かがある場合には機能しません。


これは正しいですが、数式を含むセルの下のセルにデータがないことを確認する必要があります。
BinaryJoe01

これは問題を解決するための貴重なヒントになるかもしれませんが、良い答えも解決策を示しています。意味を示すサンプルコードを提供するように編集してください。または、代わりにコメントとしてこれを書くことを検討してください。
Toby Speight 2018
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.