nergal Опубликовано 10 марта, 2008 Жалоба Поделиться Опубликовано 10 марта, 2008 Приветствую всех кодеров!!!!! Ребят, нужен совет. Подскажите, или хотя бы укажите где можно найти материал по моей проблеме. А проблема в следующем: открываю в visual basic'е екселевский файл и конвертирую его в файл формата dbf. Теперь нужно разместить на форме combobox и занести в него список всех рабочих листов екселевского файла, который я захочу конвертировать в dbf. Подскажите пожалуйста, как мне из экселевского файла получить список всех рабочих листов и занести этот список в combobox, чтобы пользователь в моей проге мог указать нужный ему лист для конвертации его в файл dbf Ссылка на комментарий Поделиться на другие сайты Поделиться
LomaK.XP Опубликовано 15 марта, 2008 Жалоба Поделиться Опубликовано 15 марта, 2008 Майкрософт описала екселевский формат, тут 2 варианта: использовать компонент какой-нить для работы с файлом xls или писать мамому... описание формата вот тут http://www.microsoft.com/interop/docs/offi...aryformats.mspx Ссылка на комментарий Поделиться на другие сайты Поделиться
nergal Опубликовано 17 марта, 2008 Автор Жалоба Поделиться Опубликовано 17 марта, 2008 Майкрософт описала екселевский формат, тут 2 варианта: использовать компонент какой-нить для работы с файлом xls или писать мамому... описание формата вот тут http://www.microsoft.com/interop/docs/offi...aryformats.mspx Спасибо, друг, помогло. Но опять я запоролся. Опять нужна помощь. Опять (извините за тавтологию и повторы :blush2: ) на лёгких вещах запоролся, но всё же. Уж извиняйте, тяжёлые раскалываю, перед лёгкими-пасую порой. Дело вот в чём. Имеется следующий кусок проги (написанный мною, и причём с помощью документика, который мне любезно показал товарищ Lomak :bye1: ): Private Sub Command1_Click() Dim i As Integer Dim k As Integer Dim ex As Object CommonDialog1.InitDir = "C:\" Dim strFileType As String strFileType = "All Files (*.*)|*.*|" CommonDialog1.Filter = strFileType CommonDialog1.FilterIndex = 1 CommonDialog1.ShowOpen Set xls = CreateObject("Excel.Application") Set xlsWorkBook = xls.Workbooks.Open(CommonDialog1.FileName) For i = 1 To xlsWorkBook.Sheets.Count Combo1.AddItem xlsWorkBook.Sheets(i).Name Next i End Sub Private Sub Command2_Click() Set xlsWorkSheet = xlsWorkBook.Worksheets(Combo1.Text) xlsWorkSheet.Activate xlsWorkSheet.Range("A1").CurrentRange.Select xlsWorkBook.SaveAs xlsWorkBook.Path & "\Выходная таблица", xlDBF4 xlsWorkBook.Close Set xlsWorkBook = Nothing Set xlsWorkSheet = Nothing xls.Quit Set xls = Nothing End Sub Как вы наверно поняли, первой кнопке я привязал действие открытия экселевского файла и занесение названий листов, которые он содержит, в combobox. Вторая кнопка конвертирует содержимое (а именно таблицу) из выбранного в combobox'-е листа в таблицу формата dbf. С этим вопросов нет-всё понял, реализовал,работает. Теперь вопрос в следующем. На форме, помимо этих 2 кнопок и combo я разместил два listbox'-а. В каждом листе экселевской книги есть таблица, ну само собой таблица имеет шапку с наименованиями столбцов. Допустим, шапка имеет следующий вид: Имя | Фамилия | Отчество | Телефон Вопрос в следующем, как мне, при выборе определённого листа в combobox'-е, вывести в первый listbox шапку таблицы на выбранном листе, а во второй listbox-пару записей того стобца, название которого я допустим выделю в первом listbox'-е. Примерно это будет выглядеть так (допустим я выделил в первом listbox'-е строку "Имя": Listbox 1 | Listbox 2 | Имя | Павел Фамилия | Олег Отчество | Александр Телефон | Объясню, для чего мне это нужно, а нужно мне это для того чтобы пользователь мог видеть какие таблицы и какие данные в каждом из их стобце находятся в экселевском файле, затем ненужные столбцы удалить и сконвертировать оставшиеся столбцы в таблицу dbf. Как это сделать я сам разберусь. Подскажите как решить проблему с listbox'-ами. Заранее благодарен. Ссылка на комментарий Поделиться на другие сайты Поделиться
Рекомендуемые сообщения
Для публикации сообщений создайте учётную запись или авторизуйтесь
Вы должны быть пользователем, чтобы оставить комментарий
Создать учетную запись
Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!
Регистрация нового пользователяВойти
Уже есть аккаунт? Войти в систему.
Войти