Reports.Copy メソッド (Project)
カスタム レポートをコピーし、同じ内容の新しいレポートを作成します。
構文
式。コピー (ソース、 NewName)
式 'Reports' オブジェクトを表す変数。
パラメーター
名前 | 必須 / オプション | データ型 | 説明 |
---|---|---|---|
Source | 必須 | バリアント型 | コピーする レポート の名前またはレポート オブジェクト。 |
Newname | 必須 | String | 新しいレポートの名前。 |
Source | 必須 | バリアント型 | |
Newname | 必須 | String |
戻り値
Report
新しいレポート。
例
CopyAReport マクロは、コピーする指定されたレポートが存在するかどうかをチェックし、新しいレポートが既に存在するかどうかを確認します。 次に、マクロは Source パラメーターのいずれかのバリアントを使用してレポートのコピーを作成し、新しいレポートを表示します。
Sub CopyAReport()
Dim reportName As String
Dim newReportName As String
Dim newExists As Boolean
Dim oldExists As Boolean
Dim report2Copy As Report
Dim newReport As Report
reportName = "Table Tests"
newReportName = "New Table Tests"
oldExists = ActiveProject.Reports.IsPresent(reportName)
newExists = ActiveProject.Reports.IsPresent(newReportName)
Debug.Print "oldExists " & CStr(oldExists) & "; newExists " & newExists
If oldExists And Not newExists Then
Set report2Copy = ActiveProject.Reports(reportName)
' Use either of the following two statements.
'Set newReport = ActiveProject.Reports.Copy(report2Copy, newReportName)
Set newReport = ActiveProject.Reports.Copy(reportName, newReportName)
newReport.Apply
End If
If (oldExists = False) Then
MsgBox Prompt:="The requested report to copy, '" & reportName _
& "', does not exist.", Title:="Report copy error"
ElseIf newExists Then
MsgBox Prompt:="The new report '" & newReportName _
& "' already exists.", Title:="Report copy error"
Else
MsgBox Prompt:="The new report '" & newReportName & "'" _
& vbCrLf & "is copied from '" & reportName & "'.", _
Title:="Report copy success"
End If
End Sub
関連項目
サポートとフィードバック
Office VBA またはこの説明書に関するご質問やフィードバックがありますか? サポートの受け方およびフィードバックをお寄せいただく方法のガイダンスについては、Office VBA のサポートおよびフィードバックを参照してください。