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
⧭ コードの説明:
- このコードは マクロ を作成します Remove_Formulas_from_Selected_Range と呼ばれる .
- まず、ユーザーが選択した範囲のすべてのセルから値をコピーします。
- 次に、フォーマットを維持したまま、それぞれのセルに値を貼り付けます。
- したがって、値とフォーマットを保持したまま、選択したセル範囲からすべての数式を削除します。
Excel で数式を削除する 2 つの方法 VBA で値を保持して書式設定する
ここに 名前 のデータセットがあります 、初任給 、現在の給与 Jupyter Group という会社の従業員の一部です。
また、平均給与もあります 、最高の給与を持つ従業員の名前、 そして最低の給料 ワークシートの別々のセルに。
ここで、各従業員の現在の給与は初任給の 20% です。
つまり、セル D4 次の式があります:
=C4+(C4*20)/100
D5 次の式があります:
=C5+(C5*20)/100
などなど。
セル G7 次の式の平均給与があります:
=AVERAGE(D4:D13)
<強い>
セル H7 次の式で最高の給与を持つ従業員を持っています:
=INDEX(B4:D13,MATCH(MAX(D4:D13),D4:D13,0),1)
セル I7 給与が最も低い従業員は次の式で表されます:
=INDEX(B4:D13,MATCH(MIN(D4:D13),D4:D13,0),1)
今日はマクロを開発します 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 マクロ有効ワークブック として保存します .次に、数式を削除するセル範囲を選択します。
ここでは、従業員レコードのみから数式を削除します (B4:D13) )。 B4:D13 の範囲を選択しました .
次に、Remove_Formulas_from_Selected_Range. というマクロを実行します。
( この記事を読んで、マクロを実行する方法を詳しく確認してください ).
選択したセル範囲からすべての数式が削除され、値と書式設定が残ります。
続きを読む: 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. と呼ばれます。
<強い>
⧭ 出力:
ワークシートに戻り、マクロを実行します Remove_Formulas_from_the_Whole_Worksheet と呼ばれる .
入力ボックスが表示されます 式を削除したいワークシートの名前を入力するよう求められます.
ここで、Sheet2 から数式を削除します 、つまり Sheet2 に入りました .
[OK] をクリックします .
ワークシート全体から数式が削除され、値と書式のみが保持されます。
現在の給与から数式を削除します
また、平均給与から数式を削除します 、給与が最も高い従業員 、および給与が最も低い従業員 .
続きを読む: Excel で数式の代わりに値を表示する方法 (7 つの方法)
覚えておくべきこと
ここでは xlPasteValuesAndNumberFormats を使用しました VBA で貼り付けるオプション
それに加えて、11 あります VBA に値を貼り付けるためのその他のオプション 、それぞれが特定の種類の貼り付けを実行します。
詳細については、このリンクをクリックしてください .
結論
これらの方法を使用すると、VBA で値と書式を変更せずに、Excel のワークシートから数式を削除できます。 .何か質問がありますか?お気軽にお問い合わせください。
関連記事
- Excel で数式の結果をテキスト文字列に変換する方法 (7 つの簡単な方法)
- 数式の結果を Excel の別のセルに入れる (よくある 4 つのケース)
- Excel で数式ではなくセルの値を返す方法 (3 つの簡単な方法)
- Excel で数式を自動的に値に変換する (6 つの効果的な方法)
- Excel で非表示の数式を削除する方法 (5 つの簡単な方法)
-
Excel VBA:オートフィルターが存在する場合は削除する (7 つの例)
マイクロソフト エクセル オートフィルターを削除する複数の方法を提供します ワークシートから または Excel テーブル。 この記事では、 7 について学びます。 オートフィルターが存在する場合はそれを削除するメソッド VBA スクリプトを使用して Excel で。 次のリンクから Excel ファイルをダウンロードして、それに沿って練習できます。 Excel に AutoFilter が存在する場合、VBA を使用して AutoFilter を削除する 7 つの例 1.存在する場合、アクティブなワークシートからオートフィルターを削除します 次のスクリーンショットは AutoFilt
-
Excel でリンクを解除して値を保持する方法 (3 つの簡単な方法)
複数のワークシートで作業すると、それらは相互接続されます。ただし、これらのリンクを解除し、値のみを保持する必要がある場合があります。この記事では、3 について説明します リンクを解除する方法 Excelで値を保持します。興味がある場合は、練習用ワークブックをダウンロードしてフォローしてください。 この記事を読みながら練習するために、この練習用ワークブックをダウンロードしてください。 Excel でリンクを解除して値を保持する 3 つの簡単な方法 アプローチを実証するために、10 のデータセットを検討します 最初の2の従業員とその給与 Employee Salary Details.xlsx