On-line: гостей 0. Всего: 0 [подробнее..]
АвторСообщение
Dima
администратор




Пост N: 2372
Зарегистрирован: 17.05.05
ссылка на сообщение  Отправлено: 21.05.12 16:52. Заголовок: Снова EXCEL


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

Спасибо: 0 
Профиль
Ответов - 300 , стр: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 All [только новые]


Dima
администратор




Пост N: 4147
Зарегистрирован: 17.05.05
ссылка на сообщение  Отправлено: 08.08.14 23:16. Заголовок: fil Нужно: опросил ..


fil
Нужно: опросил состояние EXCEL и остался в окне своей проги.

Спасибо: 0 
Профиль
fil



Пост N: 242
Зарегистрирован: 17.06.10
ссылка на сообщение  Отправлено: 08.08.14 23:24. Заголовок: ну так в чем проблем..


ну так в чем проблема сделать это по таймеру ?

Спасибо: 0 
Профиль
Haz
администратор




Пост N: 275
Зарегистрирован: 20.02.11
ссылка на сообщение  Отправлено: 09.08.14 08:11. Заголовок: Dima пишет: опросил..


Dima пишет:

 цитата:
опросил состояние EXCEL и остался в окне



Дима, а :Visible := .T. зачем если не та книга ?
Как еще вариант - из цикла вызывать проверку отдельным потоком , который всегда можно прибить в случае ненадобности

PS. Протестировал выгрузку в Excel через ADODB - результат устроил полностью 10 000 строк выгружается 5 сек

Спасибо: 0 
Профиль
Dima
администратор




Пост N: 4148
Зарегистрирован: 17.05.05
ссылка на сообщение  Отправлено: 09.08.14 14:15. Заголовок: Разобрался. Просто н..


Разобрался. Просто не нужно юзать oExcel:Visible.

Странная штука.
Если ячейки я могу заполнить вот так

oSheet:Range(osheet:cells(1,1),osheet:cells(1,5)):Value:={1,2,3,4,5}

А если сделать обратную операцию и считать значения в массив

amas:=(oSheet:Range(osheet:cells(j,1),osheet:cells(j,15)):Value)

То массив имеет вид не {1,2,3,4,5} а {{1},{2},{3},{4},{5}}
Это нормально ?



Спасибо: 0 
Профиль
fil



Пост N: 243
Зарегистрирован: 17.06.10
ссылка на сообщение  Отправлено: 09.08.14 15:07. Заголовок: массив имеет вид не ..



 цитата:
массив имеет вид не {1,2,3,4,5} а {{1},{2},{3},{4},{5}}



Нормально.

Спасибо: 0 
Профиль
Dima
администратор




Пост N: 4149
Зарегистрирован: 17.05.05
ссылка на сообщение  Отправлено: 09.08.14 16:37. Заголовок: Haz пишет: PS. Прот..


Haz пишет:

 цитата:
PS. Протестировал выгрузку в Excel через ADODB - результат устроил полностью 10 000 строк выгружается 5 сек


А где можно пример посмотреть по работе с EXCEL ? Что то не нашел.
Смотрел тут harbour\contrib\hbwin\tests\

Спасибо: 0 
Профиль
Haz
администратор




Пост N: 276
Зарегистрирован: 20.02.11
ссылка на сообщение  Отправлено: 09.08.14 17:05. Заголовок: Dima пишет: А где м..


Dima пишет:

 цитата:
А где можно


можно в исходниках ADORDD на core-master

но я тестил проще

#include 'adordd.ch'
Func Test()
local cFile := "TEST.XLS"
local cConnectStr := 'Provider=Microsoft.Jet.OLEDB.4.0; Data Source= ' + cFile + ';Extended Properties= "Excel 8.0;HDR=YES"'
local oConnection := TOleAuto():New( "ADODB.Connection" )
local oCommand
local i := 0

oConnection:ConnectionString := cConnectStr
oConnection:Open()
oCommand := TOleAuto():New("ADODB.Command")
oCommand:ActiveConnection := oConnection

oCommand:CommandText = "CREATE TABLE [МояТаблица] (Символьный char(255), Дата date, Целый int, Дробный float)"
oCommand:Execute()

For i := 1 TO 10000
oCommand:CommandText = "INSERT INTO [МояТаблица] (Символьный, Дата, Целый, Дробный) values ('АБВГДЕЁ', '12/4/1955', '1234567', '12345,6789')"
oCommand:Execute()
END

return nil


PS если TEST.XLS есть - не сможет создать и выдаст ошибку

Спасибо: 0 
Профиль
Dima
администратор




Пост N: 4150
Зарегистрирован: 17.05.05
ссылка на сообщение  Отправлено: 09.08.14 18:12. Заголовок: Haz Спасибо !..


Haz
Спасибо !

Спасибо: 0 
Профиль
Haz
администратор




Пост N: 278
Зарегистрирован: 20.02.11
ссылка на сообщение  Отправлено: 09.08.14 19:20. Заголовок: Dima пишет: Спасибо..


Dima пишет:

 цитата:
Спасибо


незачто
Есть смысл в Excel гнать через ADO, а потом красоту наводить через OLE


Спасибо: 0 
Профиль
Dima
администратор




Пост N: 4236
Зарегистрирован: 17.05.05
ссылка на сообщение  Отправлено: 30.10.14 17:06. Заголовок: а как загнать нужные..


а как загнать нужные строки в группу ? Что то макрос мало что сказал....

Спасибо: 0 
Профиль
Sergy





Пост N: 427
Зарегистрирован: 08.07.06
ссылка на сообщение  Отправлено: 30.10.14 18:37. Заголовок: Dima пишет: а как з..


Dima пишет:

 цитата:
а как загнать нужные строки в группу ? Что то макрос мало что сказал....



Речь об объединении ячеек ?

Мой макрос вот что показал:

Sub Макрос1() 
Range("D8:D10").Select
With Selection
.HorizontalAlignment = xlGeneral
.VerticalAlignment = xlBottom
.WrapText = False
.Orientation = 0
.AddIndent = False
.ShrinkToFit = False
.MergeCells = True
End With
End Sub

Работает там последняя строка. Все остальные - задают параметры вновь создаваемого объединения.

Спасибо: 0 
Профиль
Dima
администратор




Пост N: 4237
Зарегистрирован: 17.05.05
ссылка на сообщение  Отправлено: 30.10.14 18:48. Заголовок: Sergy Да оно , спас..


Sergy
Да оно , спасибо !

Спасибо: 0 
Профиль
Dima
администратор




Пост N: 4238
Зарегистрирован: 17.05.05
ссылка на сообщение  Отправлено: 02.11.14 19:01. Заголовок: EXCEL 2003 В нем воо..


EXCEL 2003
В нем вообще работает заливка фона вида Interior.Color = RGB(220,220,220) ,
пробовал через макрос и похоже что не работает и цвета берутся из
ColorIndex

PS
Хотел серым цветом залить от 10 до 15 % черного и ни как.

Спасибо: 0 
Профиль
Sergy





Пост N: 428
Зарегистрирован: 08.07.06
ссылка на сообщение  Отправлено: 03.11.14 16:43. Заголовок: Dima пишет: Хотел с..


Dima пишет:

 цитата:
Хотел серым цветом залить от 10 до 15 % черного и ни как.



Работает в любом Экселе, от 97 до 2010 точно:
...
Selection.Interior.ColorIndex = 15

вот тут: http://infostart.ru/public/58191/ есть другие цвета.

Спасибо: 0 
Профиль
Dima
администратор




Пост N: 4239
Зарегистрирован: 17.05.05
ссылка на сообщение  Отправлено: 03.11.14 16:57. Заголовок: Sergy 15 не подходи..


Sergy
15 не подходит в том и дело. нужно светлее.
а цвета я тут смотрю http://www.databison.com/excel-color-palette-and-color-index-change-using-vba/

Спасибо: 0 
Профиль
fil



Пост N: 276
Зарегистрирован: 17.06.10
ссылка на сообщение  Отправлено: 16.02.15 18:17. Заголовок: Приветствую ! В лис..


Приветствую !

В лист Excel нужно вставить разрыв страницы - HPageBreaks. Никак не разберусь как это выглядит в Харборе ?

Спасибо: 0 
Профиль
Dima
администратор




Пост N: 4499
Зарегистрирован: 17.05.05
ссылка на сообщение  Отправлено: 16.02.15 18:27. Заголовок: не оно ? http://five..

Спасибо: 0 
Профиль
fil



Пост N: 277
Зарегистрирован: 17.06.10
ссылка на сообщение  Отправлено: 16.02.15 19:04. Заголовок: Все работает :sm36:..


Все работает

Спасибо: 0 
Профиль
fil



Пост N: 278
Зарегистрирован: 17.06.10
ссылка на сообщение  Отправлено: 16.02.15 19:11. Заголовок: Только замедление в ..


Только замедление в разы

Спасибо: 0 
Профиль
fil



Пост N: 279
Зарегистрирован: 17.06.10
ссылка на сообщение  Отправлено: 17.02.15 11:12. Заголовок: Интересно, почему вс..


Интересно, почему вставка более чем 1 разрыва страницы жутко тормозит ?

Спасибо: 0 
Профиль
Ответов - 300 , стр: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 All [только новые]
Тему читают:
- участник сейчас на форуме
- участник вне форума
Все даты в формате GMT  3 час. Хитов сегодня: 274
Права: смайлы да, картинки да, шрифты да, голосования нет
аватары да, автозамена ссылок вкл, премодерация откл, правка нет