【发布时间】:2019-01-27 17:16:27
【问题描述】:
我编写了下面的代码来从 Excel 工作表中读取数据并在 Visual Basic 的组合框中显示数据。
但是,当我点击“运行”时,什么都没有显示。
Public Class Form1
Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
Dim MyConnection As New OleDb.OleDbConnection
Dim MyCommand As New OleDb.OleDbCommand
Dim filePath, sql As String
filePath = "C:\Users\Nour\Desktop\projects\grade10\grade10\atlas.xlsx"
sql = "Select continent from [Sheet1]"
MyConnection.ConnectionString = $"Provider= Microsoft.Jet._OLEDB 11.0;data source = {filePath};Extended_Properties=Excel 8.0"
MyConnection.Open()
MyCommand.Connection = MyConnection
MyCommand.CommandText = sql
Dim da As New OleDb.OleDbDataAdapter
da.SelectCommand = MyCommand
Dim dt As New DataTable
da.Fill(dt)
Me.ComboBox1.DataSource = dt
Me.ComboBox1.DisplayMember = dt.Columns(0).ToString
MyConnection.Close()
【问题讨论】:
-
我不确定这里的大部分代码,但我很确定您需要在连接字符串中分隔文件路径。用双引号终止前面的字符串,使用 & 符号,然后使用文件路径。在背面反转它。
-
@wallyeye 见Interpolated Strings (Visual Basic Reference)。