Форум » [x]Harbour » Снова EXCEL (продолжение) » Ответить

Снова EXCEL (продолжение)

Dima: Ранее с Excel из Harbour ни когда не работал. Поставили тут задачу. У некоторых поставщиков есть определенные формы заказов. Набраны они в Excel. Сейчас народ руками заполняет эти формы и шлет по электронке поставщикам. Задача сводится к тому что бы в этих формах находить нужные коды товара и в нужной ячейке проставлять заказ. Может ткнет кто носом с чего начать что бы не напороться на грабли. Спасибо Сами формы тут http://zalil.ru/33279066

Ответов - 300, стр: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 All

Andrey: Haz пишет: Я пользуюсь без всяких дополнительных функций. Все родное, харбуровское. Или речь не о том? Да я не понял тоже. В примере разве - всё родное, харбуровское ?

Dima: Andrey пишет: А есть пример небольшой, демонстрирующий как этим пользоваться ? Пост N: 3573 в этой теме

fil: Есть переменная содержащая RTF структуру. Как вставить эту переменную в ячейку Excel не как текст, а как RTF ?


fil: Всем, привет ! Как можно программно войти в ячейку. Т.е. как если дважды кликнуть на ячейке и войти в режим редактирования. (макрос делал)

Dima: fil пишет: программно войти в ячейку Может это ?

fil: Только этот метод будет работать ежели Excel уже визуализирован. А так вроде подходит :SetKeys({"F2"}) :Paste() :SetKeys({"RETURN"}) А то ежели сделать paste не входя в ячейку, текст из клипборда распределится по строкам. В общем вся фигня из за того, что мне в ячейку Excel надо положить форматный текст, а в value ячейки можно положить только текст без формата. Остается paste

Andrey: Всем привет ! Переношу проект из HBOLE.LIB -> HBWIN.LIB Создаю экселовский файл из массива: [pre2]// дата , л/счёт , код , .... aDim := { DATE(), "901010"+HB_NtoS(10+nLine), "001", .... }[/pre2] В HBOLE.LIB использовал: [pre2] IF cType == "D" oSheet:Cells( nLine, nI ):SET( "NumberFormat", "@" ) [/pre2] Получалось так: При использовании HBWIN.LIB переделал код: [pre2] IF cType == "D" oSheet:Cells( nLine, nI ):NumberFormat := '@' // текстовая ячейка[/pre2] И так получается: Как для HBWIN.LIB сделать шаблон даты 99.99.9999 ?

Dima: Andrey пишет: Как для HBWIN.LIB сделать шаблон даты 99.99.9999 ? Сделать руками такой шаблон в Excel (c записью в макрос) и после смотреть что он туда нарисовал

a_sidorov: Чтобы дата корректно отображалась в Excel, нужно дату преобразовать в строку, откуда Excel знает, что на входе дата и в каком зашифрованном виде? Например, так oSheet:Cells( nLine, nI ):Value := If( ValType( xValue )=="D", DtoC( xValue ), If( ValType( xValue )=="N", xValue , ; If( ValType( xValue )=="L", If( xValue ,".T." ,".F." ), cValToChar( xValue ) ) ) )

Haz: Andrey пишет: NumberFormat := '@' Никаких проблем не испытываю при прямой записи даты в Excel. Единственное в hbwin пустую дату необходимо заменить на nil. Указание @ в нумберформате говорит, что следующие данные это строка. Может в этом проблема

Andrey: Haz пишет: Указание @ в нумберформате говорит, что следующие данные это строка. Может в этом проблема В HBOLE.LIB работало, в HBWIN.LIB - нет. Делаю следующее: [pre2] aDim := { DATE()-nLine, "901010"+HB_NtoS(10+nLine), .... } FOR nI := 1 TO LEN(aDim) cType := VALTYPE(aDim[nI]) xValue := aDim[nI] oSheet:Cells( nLine, nI ):Value := xValue IF cType == "D" // преобразуем в текстовый формат //oSheet:Cells( nLine, nI ):NumberFormat := '@' // работает //xValue := StoD( DTOS(xValue) ) // for HBOLE - oSheet:Cells( nLine, nI ):SET( "NumberFormat", 'm/d/yy' ) // дата ячейка - было ранее oSheet:Cells( nLine, nI ):NumberFormat := 'm/d/yy' // дата ячейка - НЕ РАБОТАЕТ, вылет по ошибке ELSEIF cType == "N" .....[/pre2]

Alex_Cher: Мужики, пособите ... создаю Excel, необходимо закрепить верхнюю часть таблицы на экране - макрос выдает " ActiveWindow.FreezePanes = True " вставляю в MiniGUI в разных комбинациях не проходит ... что не так ?

Dima: Alex_Cher Примерно так oExcel:Sheets():Select() oExcel:ActiveWindow:SplitRow := 11 // :SplitCol oExcel:ActiveWindow:FreezePanes := .t.

Alex_Cher: Dima пишет: Примерно так Dima - спасибо большое все нарисовалось,.. удачи тебе и всех благ ....

Pasha: В HBOLE.LIB работало, в HBWIN.LIB - нет. Удивительно, но дельфийский народ жалуется на такой же трабл (хоть у них нет hbole): http://citforum.ck.ua/programming/delphi/excel/

Dima: Как правильно конвертнуть макрос под Harbour ? ExecuteExcel4Macro "SHOW.DETAIL(1,212,FALSE,,2)" Пробовал так oExcel:Application:ExecuteExcel4Macro("SHOW.DETAIL(1,212,FALSE,,2)") Не пашет Проехали (надо было свернуть группы) Сделал так oSheet:Outline:ShowLevels(1)

vvv: Всем доброго дня! Возник вот такой интересный вопрос. Более-менее полноценная работа с Excel подразумевает наличие на компьютере установленного офиса. В силу привычки (или упоротости, не знаю) пользуюсь портабельным офисом. Впрочем, это касается не только офиса, предпочитаю использовать портабельные версии нужного ПО, если они имеются. Собственно вопрос в том, можно ли в связке с харбором как-то использовать вместо установленного офиса портабельный?

Pasha: У меня на работе как раз не установлен MS Office (уже 7 лет обхожусь без него). Скачаю portable, посмотрю.

Dima: vvv пишет: Собственно вопрос в том, можно ли в связке с харбором как-то использовать вместо установленного офиса портабельный? Не попробуешь , не узнаешь... Для начала проверь , будет ли создаваться OLE объект Excel

SergKis: vvv пишет схема работы с xml должна работать ( см. тему http://clipper.borda.ru/?1-4-0-00001250-000-0-0-1541685579 ) т.е. получаем file.xml и запускаем excel file.xml



полная версия страницы