Чтобы выбрать столбец в Excel с помощью C# с библиотекой OleDb, когда имя столбца содержит пробел, вы можете использовать один из следующих методов:
Метод 1. Заключите имя столбца в квадратные скобки ([]):
string columnName = "[Column Name with Space]";
Метод 2. Замените пробел символом подчеркивания (_):
string columnName = "Column_Name_with_Space";
Метод 3: используйте обозначение функции F1:
string columnName = "F1";
После того как вы определили подходящий формат имени столбца, вы можете создать SQL-запрос для выбора нужного столбца. Вот пример, демонстрирующий использование:
using System;
using System.Data.OleDb;
class Program
{
static void Main()
{
string connectionString = @"Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\path\to\your\excel_file.xlsx;Extended Properties='Excel 12.0 Xml;HDR=YES;'";
string columnName = "[Column Name with Space]";
using (OleDbConnection connection = new OleDbConnection(connectionString))
{
connection.Open();
string query = $"SELECT {columnName} FROM [Sheet1$]";
OleDbCommand command = new OleDbCommand(query, connection);
OleDbDataReader reader = command.ExecuteReader();
while (reader.Read())
{
// Access the column data here
string columnData = reader.GetString(0);
Console.WriteLine(columnData);
}
reader.Close();
}
}
}
Не забудьте изменить connectionString, чтобы он соответствовал пути и свойствам вашего файла Excel.