私がしようとしているのはコンバータです。私は[Sheet1 $]として指定されているので、Excelファイルを開く際に問題があります。シートの名前が変更されている場合、私のコードはそれを読んでいません。おそらくシートの名前を取得する方法はありますか?名前の変更に関係なく、Excelファイルのシートを読み込む方法は?
Private Sub btnSelect_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnSelect.Click
If cmbPortal.Text.Length = 0 Then
MessageBox.Show("Select portal to process first", "Invalid", MessageBoxButtons.OK, MessageBoxIcon.Warning)
Else
Select Case cmbPortal.Text
Case "Robinsons"
FileFilter = "Portable Document File (*.pdf)|*.pdf"
txtFilePath.Text = parse.showdialog(FileFilter)
If txtFilePath.Text = Nothing Then
MessageBox.Show("No file was selected", "Information", MessageBoxButtons.OK, MessageBoxIcon.Information)
End If
Case "Waltermart"
FileFilter = "Portable Document File (*.pdf)|*.pdf"
txtFilePath.Text = parse.showdialog(FileFilter)
If txtFilePath.Text = Nothing Then
MessageBox.Show("No file was selected", "Information", MessageBoxButtons.OK, MessageBoxIcon.Information)
End If
Case "7-11"
Dim OpenFileDialog1 As New OpenFileDialog
With OpenFileDialog1
.FileName = "Excel File"
.Title = "Open File"
.InitialDirectory = "C:\User\Desktop"
.Filter = "EXCEL|*.xls;*.xlsx;*.xlsm;*.xlsb"
.FilterIndex = 1
End With
If OpenFileDialog1.ShowDialog(Me) = System.Windows.Forms.DialogResult.OK Then
Me.Cursor = Cursors.WaitCursor
Try
Dim FileName As String = OpenFileDialog1.FileName
Dim strConnString As String
strConnString = "Driver={Microsoft Excel Driver (*.xls, *.xlsx, *.xlsm, *.xlsb)};DBQ=" & FileName & ";"
Dim strSQL As String
strSQL = "SELECT * FROM [Sheet1$]"
Dim y As New Odbc.OdbcDataAdapter(strSQL, strConnString)
y.Fill(RetVal)
txtFilePath.Text = FileName
Catch
MessageBox.Show("An Error Occurred, Please Contact MIS for Assistance", "SYSTEM", MessageBoxButtons.OK, MessageBoxIcon.Error)
End Try
Me.Cursor = Cursors.Default
ElseIf txtFilePath.Text = Nothing Then
MessageBox.Show("No file was selected", "Information", MessageBoxButtons.OK, MessageBoxIcon.Information)
End If
Me.Cursor = Cursors.Default
End Select
If txtFilePath.Text.Length = 0 Then
btnSelect.Enabled = True
btnConvert.Enabled = False
cmbPortal.Enabled = True
Else
btnSelect.Enabled = False
btnConvert.Enabled = True
cmbPortal.Enabled = False
End If
End If
End Sub
取得しているワークシートのインデックスは修正されていますか?例えば、常に最初のワークシートですか? –
あなたのタイトルはあなたの質問の内容に基づいて誤解を招くこともあります。 –
常に最初のワークシートで、コードに基づいて、最初のシートの名前がSheet1の場合にのみ指定されます。私がやりたかったのは、名前が変更されても最初のシートを読み込むことでした。私は本当にタイトルのために申し訳なく思っており、気づいてくれてありがとう。 – Biboy