以下に関数を書きました。ただし、ステータス変数を処理すると、NullReference Exception unhandled by user code というエラーが発生します。
私は自分の関数でこの種の問題に対処する必要がなかった VBA から来ました。ステータス変数は、オブジェクトのプロパティを true または false に設定することになっています。
設定してみた
status = New Boolean
status = False
しかし、何も機能しませんでした
これが私のコードです
Option Strict On
Option Explicit On
Imports Microsoft.Office.Interop.Excel
Imports System.Windows.Forms
Module sheetView
Function viewSheets(sheetName As String, status As Boolean) As String
Dim ThisApplication As Excel.Application = New Excel.Application()
Dim WB As Excel._Workbook
Dim WS As Excel.Worksheet
WB = CType(Globals.ThisWorkbook.Application.ActiveWorkbook, Excel.Workbook)
WS = CType(WB.Sheets(sheetName), Excel.Worksheet)
With ThisApplication
.ScreenUpdating = False
WS.Select()
.ActiveWindow.DisplayGridlines = status
.ActiveWindow.DisplayHeadings = status
.ActiveWindow.DisplayWorkbookTabs = status
.DisplayFormulaBar = status
.DisplayStatusBar = status
.ExecuteExcel4Macro("Show.ToolBar(""Ribbon"", status)")
.ScreenUpdating = True
End With
Return ""
End Function
End Module
Private Sub btnEmployeeDashboard_Click(sender As Object, e As EventArgs) Handles btnEmployeeDashboard.Click
sheetView.viewSheets("employeeBoard", True)
End Sub