|
|
|
Импорт файла Эксэль в PB/Помогите,Очень прошу!!!!
|
|||
|---|---|---|---|
|
#18+
Ребята,я на форуме нашёл вот такой отрывок кода ,и как я понимаю он для решения моей задачи подходит...Но в силу того ,что я в PB ещё очень зелёный(но задача от начальства поступила именно мне),то очень прошу может кто-то привести пример кода похожего на этот что-бы импортировать простейший лист Экселя,и указать какие окна,dw или может быть какие-нибудь функции мне нужно создать в билдере что бы это всё работало... Заранее спасибо!! i_rc = GetFileOpenName('Select File', s_fname1, s_fname2, 'XLS', 'Excel Files (*.XLS),*.XLS') i_file_num = FileOpen (s_fname1, StreamMode!, Write!, LockReadWrite!) ole_book = CREATE oleobject IF NOT IsValid(ole_book) THEN MessageBox(This.Title, 'Create fail.', Exclamation!) DESTROY ole_book RETURN END IF i_rc = ole_book.ConnectToNewObject('excel.application') a_any = ole_book.Application.DisplayAlerts = FALSE a_any = ole_book.Application.WorkBooks.Open(s_fname1) // это на случай если у тебя больше чем один воркщит l_worksheet_knt = ole_book.Worksheets.Count IF l_worksheet_knt > 1 THEN FOR l_idx = 1 TO l_worksheet_knt s_work_sheet_name[l_idx] = ole_book.Worksheets(l_idx).Name l_work_sheet_idx[l_idx] = l_idx NEXT i_str_pass.s[] = s_work_sheet_name[] i_str_pass.d[] = l_work_sheet_idx[] message.fnv_set_str_pass(i_str_pass) // w_parm_import_sheets = Просто построй окошко куда передаш аррэи и даш юзверю возможность выбрать нужный воркщит ... open(w_parm_import_sheets) i_str_pass = Message.fnv_get_str_pass() Message.fnv_clear_str_pass() CHOOSE CASE i_str_pass.s_action CASE 'ok' l_worksheet_knt = i_str_pass.d[1] CASE ELSE ole_sheet.DisconnectObject() ole_book.Application.Quit ole_book.DisconnectObject() IF IsValid(ole_sheet) THEN DESTROY ole_sheet END IF IF IsValid(ole_book) THEN DESTROY ole_book END IF close(this) RETURN END CHOOSE END IF ole_sheet = ole_book.ActiveWorkBook.WorkSheets(l_worksheet_knt) ole_book.Workbooks(1).Worksheets(l_worksheet_knt).select ole_book.ActiveCell.CurrentRegion.Select() ole_book.Selection.Copy() l_row = dw_твоё_куда_надо_затянуть.ImportClipBoard(2) ClipBoard('') ole_sheet.DisconnectObject() ole_book.Application.Quit ole_book.DisconnectObject() IF IsValid(ole_sheet) THEN DESTROY ole_sheet END IF IF IsValid(ole_book) THEN DESTROY ole_book END IF ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.03.2008, 12:37 |
|
||
|
Импорт файла Эксэль в PB/Помогите,Очень прошу!!!!
|
|||
|---|---|---|---|
|
#18+
Импорт файла Эксэль в PB: делаешь окно, в него вставляешь multiline edit и command button на кнопке в событии clicked пишешь примерно следующее (обьяви переменные): Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.03.2008, 13:42 |
|
||
|
Импорт файла Эксэль в PB/Помогите,Очень прошу!!!!
|
|||
|---|---|---|---|
|
#18+
Да,спасибо... Но лист Экселя не показывается в этом mle... Хотя,видно что что-то в него загрузилось... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.03.2008, 14:37 |
|
||
|
Импорт файла Эксэль в PB/Помогите,Очень прошу!!!!
|
|||
|---|---|---|---|
|
#18+
#@$^!!! значит учись ставить задачи и задавать вопросы. сам привел пример с Copy Paste че те надо сформулируй! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.03.2008, 15:04 |
|
||
|
Импорт файла Эксэль в PB/Помогите,Очень прошу!!!!
|
|||
|---|---|---|---|
|
#18+
значит делайте вместо Код: plaintext 1. 2. 3. 4. 5. 6. 7. Код: plaintext 1. 2. 3. 4. где a_cell_x и a_cell_y столбик и строка в экселе (ячейка) и так много раз, и вставляйте la_value куда Вам надо. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.03.2008, 15:07 |
|
||
|
|

start [/forum/topic.php?fid=15&tid=1336741]: |
0ms |
get settings: |
11ms |
get forum list: |
14ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
30ms |
get topic data: |
14ms |
get forum data: |
3ms |
get page messages: |
50ms |
get tp. blocked users: |
2ms |
| others: | 230ms |
| total: | 362ms |

| 0 / 0 |

Извините, этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
... ля, ля, ля ...