ホームページ >トピック >excel >Excelで複数のワークシートの関数計算結果を数値化

Excelで複数のワークシートの関数計算結果を数値化

WBOY
WBOY転載
2022-07-13 11:41:557358ブラウズ

この記事では、単一のワークシートの関数を含む複数のワークシートの関数計算結果を数値に変換する方法を中心に、excel に関する知識をまとめています。数値の変換、複数のワークシートでの数式から数値への変換、複数のワークブックでの数式から数値への変換など、一緒に見ていきましょう。

Excelで複数のワークシートの関数計算結果を数値化

関連する学習の推奨事項: excel チュートリアル

複数のワークシートの関数計算結果を数値に変換するにはどうすればよいですか?今日はこの種の問題に焦点を当ててお話しします。運用範囲に応じて、これは 3 つの状況に分類できます。

  • #数式を 1 つのワークシートの値に変換する

  • 数式を複数のワークシートの値に変換する

  • 複数のワークブックの数式を数値に変換する

1. 地域の数式を数値に変換する

まず、最初のケースの変換について説明します。地域関数の計算結果を数値化します。これが最も一般的で、操作は比較的簡単です。ターゲット領域をコピーし、右クリックして値として選択して貼り付けます。

操作アニメーションは以下の通りです:

Excelで複数のワークシートの関数計算結果を数値化

2. 複数シートの数式を数値に変換

すべて変換したい場合現在のワークブック内のワークシート 数式を数値に変換するには、VBA コードを使用する必要があります。参照コードは次のとおりです。

Sub FunctionTransValue_Sheets()
Dim sht As Worksheet
For Each sht In Worksheets '遍历工作表
sht.UsedRange.Value = sht.UsedRange.Value
Next
End Sub

コードの 3 行目から 5 行目はワークシートを走査し、コードの 4 行目はセルの値を値に変更して、数式の内容を削除します。

3. 数式を複数のワークブックの値に変換する

数式を指定したフォルダー内の複数のワークブックの値に変換するには、次のコードをコピーして実行します。
Sub FunctionTransValue_Workbooks() '全部工作簿
Dim strPath As String, sht As Worksheet
Dim strWbName As String, wb As Workbook
With Application.FileDialog(msoFileDialogFolderPicker) '获取文件夹路径
If .Show Then strPath = .SelectedItems(1) & "\" Else Exit Sub
End With
On Error Resume Next
With Application
.ScreenUpdating = False '取消屏幕刷新
.DisplayAlerts = False '取消警告信息
.EnableEvents = False '取消事件
.Calculation = xlCalculationManual '取消公式重算
.AskToUpdateLinks = False '取消外链询问
End With
strWbName = Dir(strPath & "*.xls*")
Do While strWbName <> "" &#39;dir语句遍历excel文件
If strWbName <> ThisWorkbook.Name Then
Set wb = Workbooks.Open(strPath & strWbName) &#39;打开工作簿
For Each sht In wb.Worksheets &#39;遍历工作表公式转数值
sht.UsedRange.Value = sht.UsedRange.Value
Next
wb.Close True &#39;保存关闭工作簿
End If
strWbName = Dir() &#39;下一个excel文件
Loop
With Application &#39;恢复系统设置
.ScreenUpdating = True
.DisplayAlerts = True
.EnableEvents = True
.Calculation = xlCalculationAutomatic
.AskToUpdateLinks = True
End With
If Err.Number Then
MsgBox Err.Description
Else
MsgBox "转换完成。"
End If
End Sub

コードは次のように分析されます

コードの 4 行目から 6 行目では、ユーザーがターゲット フォルダーを選択し、そのフォルダーへのパスを取得できます。

8行目から14行目で一連のシステム設定をキャンセルします。

コードの 15 行目から 25 行目では、条件付きループ ステートメントの DIR 関数を使用してブックを走査します。次に、コードの 19 行目から 21 行目でワークシートを調べて、数式を数値に変換します。

コードの 26 行目から 32 行目は、一連のシステム設定を復元します。

行 33 ~ 37 のコードは、プログラムの実行結果をフィードバックします。

関連する学習の推奨事項:

Excel チュートリアル

以上がExcelで複数のワークシートの関数計算結果を数値化の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事はexcelhome.netで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。