Office
 Computer >> コンピューター >  >> ソフトウェア >> Office

Excel で数式を削除する VBA 値と書式を保持する

この記事では、数式を削除する方法を紹介します VBA で値と書式を保持する Excel のワークシートから .最初に、選択したセル範囲から数式を削除し、次にワークシート全体から数式を削除する方法を学びます。

Excel で数式を削除して値と書式を保持する VBA (クイック ビュー)

Sub Remove_Formulas_from_Selected_Range()

Dim Rng As Range

Set Rng = Selection

Rng.Copy

Rng.PasteSpecial Paste:=xlPasteValuesAndNumberFormats

Application.CutCopyMode = False

End Sub

Excel で数式を削除する VBA 値と書式を保持する

コードの説明:

  • このコードは マクロ を作成します Remove_Formulas_from_Selected_Range と呼ばれる .
  • まず、ユーザーが選択した範囲のすべてのセルから値をコピーします。
  • 次に、フォーマットを維持したまま、それぞれのセルに値を貼り付けます。
  • したがって、値とフォーマットを保持したまま、選択したセル範囲からすべての数式を削除します。

Excel で数式を削除する 2 つの方法 VBA で値を保持して書式設定する

ここに 名前 のデータセットがあります 、初任給現在の給与 Jupyter Group という会社の従業員の一部です。

また、平均給与もあります 、最高の給与を持つ従業員の名前、 そして最低の給料 ワークシートの別々のセルに。

Excel で数式を削除する VBA 値と書式を保持する

ここで、各従業員の現在の給与は初任給の 20% です。

つまり、セル D4 次の式があります:

=C4+(C4*20)/100

D5 次の式があります:

=C5+(C5*20)/100

などなど。

Excel で数式を削除する VBA 値と書式を保持する

セル G7 次の式の平均給与があります:

=AVERAGE(D4:D13)

<強い> Excel で数式を削除する VBA 値と書式を保持する

セル H7 次の式で最高の給与を持つ従業員を持っています:

=INDEX(B4:D13,MATCH(MAX(D4:D13),D4:D13,0),1)

セル I7 給与が最も低い従業員は次の式で表されます:

=INDEX(B4:D13,MATCH(MIN(D4:D13),D4:D13,0),1)

Excel で数式を削除する VBA 値と書式を保持する

今日はマクロを開発します Visual Basic アプリケーションを使用 (VBA ) これにより、このワークシートから数式が削除され、値と書式はそのまま維持されます。

1.選択した範囲の値と書式設定を保持する Excel で数式を削除する VBA

まず、マクロを開発しましょう ワークシート全体からではなく、セルの特定の範囲から数式を削除します。

たとえば、従業員レコードのみから式を削除してみましょう (B4:D13) ).

VBA コード:

Sub Remove_Formulas_from_Selected_Range()

Dim Rng As Range

Set Rng = Selection

Rng.Copy

Rng.PasteSpecial Paste:=xlPasteValuesAndNumberFormats

Application.CutCopyMode = False

End Sub

注: このコードは マクロ を作成します Remove_Formulas_from_Selected_Range と呼ばれる .

Excel で数式を削除する VBA 値と書式を保持する

出力:

まず、ファイルを Excel マクロ有効ワークブック として保存します .次に、数式を削除するセル範囲を選択します。

ここでは、従業員レコードのみから数式を削除します (B4:D13) )。 B4:D13 の範囲を選択しました .

Excel で数式を削除する VBA 値と書式を保持する

次に、Remove_Formulas_from_Selected_Range. というマクロを実行します。

( この記事を読んで、マクロを実行する方法を詳しく確認してください ).

Excel で数式を削除する VBA 値と書式を保持する

選択したセル範囲からすべての数式が削除され、値と書式設定が残ります。

Excel で数式を削除する VBA 値と書式を保持する

続きを読む: Excel で特殊貼り付けせずに数式を値に変換する (5 つの簡単な方法)

類似の読み物

  • Excel でフィルターをかけたときに数式を削除する (3 つの方法)
  • Excel で自動数式を削除する方法 (5 つの方法)
  • 数式を停止して Excel で自動的に値に変換する
  • Excel で数式を値に変換する方法 (8 つの簡単な方法)

2.ワークシート全体から値と書式を保持して Excel で数式を削除する VBA

前の方法では、マクロを開発しました。 選択したセル範囲から数式を削除します。

ワークシート全体から数式を削除してみましょう。

次の VBA コード を使用してください

VBA コード:

Sub Remove_Formulas_from_the_Whole_Worksheet()

Sheet_Name = InputBox("Enter the Name of the Worksheet to Remove Formulas: ")

Dim Rng As Range

Set Rng = Sheets(Sheet_Name).Cells

Rng.Copy

Rng.PasteSpecial Paste:=xlPasteValuesAndNumberFormats

Application.CutCopyMode = False

End Sub

注: このコードは マクロ を作成します Remove_Formulas_from_the_Whole_Worksheet. と呼ばれます。

<強い> Excel で数式を削除する VBA 値と書式を保持する

出力:

ワークシートに戻り、マクロを実行します Remove_Formulas_from_the_Whole_Worksheet と呼ばれる .

Excel で数式を削除する VBA 値と書式を保持する

入力ボックスが表示されます 式を削除したいワークシートの名前を入力するよう求められます.

ここで、Sheet2 から数式を削除します 、つまり Sheet2 に入りました .

Excel で数式を削除する VBA 値と書式を保持する

[OK] をクリックします .

ワークシート全体から数式が削除され、値と書式のみが保持されます。

現在の給与から数式を削除します

Excel で数式を削除する VBA 値と書式を保持する

また、平均給与から数式を削除します 、給与が最も高い従業員 、および給与が最も低い従業員 .

Excel で数式を削除する VBA 値と書式を保持する

続きを読む: Excel で数式の代わりに値を表示する方法 (7 つの方法)

覚えておくべきこと

ここでは xlPasteValuesAndNumberFormats を使用しました VBA で貼り付けるオプション

それに加えて、11 あります VBA に値を貼り付けるためのその他のオプション 、それぞれが特定の種類の貼り付けを実行します。

詳細については、このリンクをクリックしてください .

結論

これらの方法を使用すると、VBA で値と書式を変更せずに、Excel のワークシートから数式を削除できます。 .何か質問がありますか?お気軽にお問い合わせください。

関連記事

  • Excel で数式の結果をテキスト文字列に変換する方法 (7 つの簡単な方法)
  • 数式の結果を Excel の別のセルに入れる (よくある 4 つのケース)
  • Excel で数式ではなくセルの値を返す方法 (3 つの簡単な方法)
  • Excel で数式を自動的に値に変換する (6 つの効果的な方法)
  • Excel で非表示の数式を削除する方法 (5 つの簡単な方法)

  1. Excel VBA:オートフィルターが存在する場合は削除する (7 つの例)

    マイクロソフト エクセル オートフィルターを削除する複数の方法を提供します ワークシートから または Excel テーブル。 この記事では、 7 について学びます。 オートフィルターが存在する場合はそれを削除するメソッド VBA スクリプトを使用して Excel で。 次のリンクから Excel ファイルをダウンロードして、それに沿って練習できます。 Excel に AutoFilter が存在する場合、VBA を使用して AutoFilter を削除する 7 つの例 1.存在する場合、アクティブなワークシートからオートフィルターを削除します 次のスクリーンショットは AutoFilt

  2. Excel でリンクを解除して値を保持する方法 (3 つの簡単な方法)

    複数のワークシートで作業すると、それらは相互接続されます。ただし、これらのリンクを解除し、値のみを保持する必要がある場合があります。この記事では、3 について説明します リンクを解除する方法 Excelで値を保持します。興味がある場合は、練習用ワークブックをダウンロードしてフォローしてください。 この記事を読みながら練習するために、この練習用ワークブックをダウンロードしてください。 Excel でリンクを解除して値を保持する 3 つの簡単な方法 アプローチを実証するために、10 のデータセットを検討します 最初の2の従業員とその給与 Employee Salary Details.xlsx