開発環境:Windows 2000
:Visual Basic 6.0
:Excel 2000
以下のサンプルソースで、”Book1.xls”の中身が空の場合
印刷されず処理が終了します。
xlSheet.UsedRange.Cells.Address を使い戻り値が""なら
中身が空だと判断できると、どこかで書いてあったのですが
"$A$1"が返ってきてしまい、判断できません。
どなたか、ご教授お願いします。
Private Sub Command1_Click()
Dim xlApp As Excel.Application
Dim xlBook As Excel.Workbook
Dim xlSheet As Excel.Worksheet
Dim strFileName As String
strFileName = "C:\Book1.xls"
Set xlApp = CreateObject("Excel.Application")
Set xlBook = xlApp.Workbooks.Open(strFileName)
Set xlSheet = xlBook.Worksheets(1)
If MsgBox("印刷して宜しいですか?", vbQuestion + vbYesNo) = vbYes Then
If xlSheet.UsedRange.Cells.Address <> "" Then
xlBook.PrintOut
Else
xlSheet.Range("A1") = "データが空です。"
xlBook.PrintOut
End If
End If
xlBook.Close
Set xlBook = Nothing
Set xlApp = Nothing
End Sub
"$A$1"が帰ってきてかつA1が空だったらシートが空だと判断したら
良いのでは
papa様のご指摘どおりです。
もうすこし考えれば良かったですね。
ありがとうございました。
ツイート | ![]() |