0
私はそのクラスiでclass1というクラスを持っていますが、form1のテキストボックスに何かを書きますが、Form1.TextBox1.textにアクセスすることはできません。それは私にExcelの保存ダイアログを与えないということですが、別の問題です。別のクラスのform1にアクセスできない
Form1コントロールにはどのようにアクセスできますか?
Form1のコード
Public Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Call ThisDrawing.GetFilepath(True)
If Me.TextBox1.Text = "" Or Me.TextBox1.Text = "False" Then MsgBox("Er is geen geldige filenaam opgegeven")
End Sub
あなたは次のようにForm1のオブジェクトを作成し、直接そのようにForm1の内のコントロールにアクセスすることはできませんClass1のコード
Public Shared Sub GetFilepath(ByVal hide As Boolean)
Dim Xl As New Excel.Application
Dim Filepath As String
Call ExcelKoppelen("Z:\test\test.xls")
Filepath = Xl.GetSaveAsFilename("", "Excel file", "*.xls")
Form1.TextBox1.text = Filepath
End Sub
Excelkoppelenコード
Shared Sub ExcelKoppelen(ByVal Bestand As String)
Dim Xl As Excel.Application
Dim Filepath As String
Dim Workbook As Excel.Workbook
Dim Worksheet1 As Worksheet
Dim Worksheet2 As Worksheet
On Error Resume Next
Xl = GetObject(, "Excel.application")
If Err.Number Then
Information.Err.Clear()
Xl = CreateObject("Excel.application")
End If
Xl.Visible = True
Xl.ScreenUpdating = True
Workbook = Xl.Workbooks.Open(Bestand)
If Err.Number Then
Workbook = Xl.Workbooks.Open("Z:\test\test.xls")
Information.Err.Clear()
Workbook.SaveAs(Bestand)
End If
If Err.Number Then Exit Sub
On Error GoTo 0
Worksheet1 = Workbook.Worksheets.Item(1)
Worksheet2 = Workbook.Worksheets.Item(2)
Xl.Visible = False
End Sub
ありがとうございます。現在、Excelの部分を除いて完璧です。 – PandaNL