Excel(MacOS)1つの列ですべての値を検索し、隣接するものを選択して移動します

0
2022.03.07

私はこれを理解するのに苦労していて、検索のために質問を適切に表現する方法を理解しています。すでにそこにある場合は、リンクしてください。

経費明細書の例を次に示します。enter image description here

'Train'行の数値を持つすべてのセルをどのように選択し、それらを列Transportに移動しますか?

IE D5、D6、D11を選択し、それらをF5、F6、F11に移動します(それぞれを個別にドラッグせずに、バッチとして(当然、例よりもはるかに大きなシートで作業しています)。

私はMacOSを使用していますが、「すべて検索」機能がExcel forMacに存在しないようです。しかし、その機能を持っていたとしても、すべての「Train」エントリを検索するために、隣接する接続された数値を選択して、それらをトランスポートの列Fに移動する方法はわかりません。

どんな助けでも深く感謝します。ありがとう。

回答
1
2022.03.08

ようこそ!

複数の選択を移動する

これは、おそらくExcelがまだ完全に解決していない興味深い問題です。選択グループまたは「マスク」は、選択したデータ/セルに常に接続されているため、単独で移動またはシフトすることはできません。正しく指摘しているように、「すべての」「トレーニング」セルを「検索」できたとしても、列Dからではなく、列Aから選択するだけです。VBAマクロを記述して、選択を列Dにシフトすることができます(これはやり過ぎです)。 )、ただし、Excelはコピーアンドペーストで複数の選択範囲の位置を維持しないため、それでも実際には役に立ちません(つまり、コピーD5、D6、D11は単にF5、F6、F7として貼り付けられます)。

@ cybernetic.nomadによる列Aでの並べ替えの提案は、上記の複数選択の問題も克服するため、おそらく最良の方法です(しゃれは意図されていません)。並べ替え、切り取り、貼り付けを行うことができますが、「train」を「フィルタリング」しないでください。これは、間にある行を非表示にするだけであり、問題が発生する可能性があります。スプレッドシートを(複数の月にわたって)元の順序に戻すことが心配な場合は、(並べ替える前に)Gでヘルパー列を追加し、G1に1を入力してから、[G]と[ホーム]> [塗りつぶし]> [シリーズ]をすべて選択して番号を付けることができますG as 1,2,3,4...。次に、トランザクションを介して並べ替え、移動を完了し、ヘルパー列Fを介して再並べ替えます。

代替案

もちろん、マクロを記録して変更し、移動を実行して、マクロをボタンまたはショートカットキーに割り当てることもできます。

最後に、新しいシートの数式を使用してテーブル全体を「複製」し、Aがトレインの場合、Fの数式を変更してDから値を取得することができます。ここでリンククローンシートを作成する方法を詳しく説明しましたが、基本的には、新しいシートでこの数式をA1に配置し、コピーしてコピーします。

 =IF(ISBLANK(Sheet1!A1),"",Sheet1!A1)

次に、Dの式を変更します

=IF(ISBLANK(Sheet1!D1),"",IF(Sheet1!A1="Train", "", Sheet1!D1))

とFで

=IF(AND(Sheet1!A1="Train", ISNUMBER(Sheet1!D1)), Sheet1!D1, IF(ISBLANK(Sheet1!F1),"",Sheet1!F1))

ISNUMBERは、この列車のエントリを以前に修正したことがないことを確認するためのものです。