On-line: tnsr2, гостей 0. Всего: 1 [подробнее..]
АвторСообщение
постоянный участник


Пост N: 25
Зарегистрирован: 13.09.07
ссылка на сообщение  Отправлено: 22.05.10 18:21. Заголовок: Сортировка таблицы Excel


Есть необходимость обработать нескольких десятков таблиц Excel и в конце обработки
каждой таблицы отсортировать информацию по определенному столбцу. Может кто подскажет
как это можно сделать на Harbour?


Спасибо: 0 
ПрофильЦитата Ответить
Ответов - 8 [только новые]


постоянный участник




Пост N: 1299
Зарегистрирован: 12.09.06
ссылка на сообщение  Отправлено: 22.05.10 18:36. Заголовок: Здесь на форуме были..


Здесь на форуме были темы работы с макросами, делаешь макрос на EXCEL'е а потом переделываешь в код Harbour'a !

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник


Пост N: 26
Зарегистрирован: 13.09.07
ссылка на сообщение  Отправлено: 22.05.10 20:44. Заголовок: Andrey пишет: ..


Andrey пишет:


 цитата:
Здесь на форуме были темы работы с макросами, делаешь макрос на EXCEL'е а потом переделываешь в код Harbour'a !



Ну и как перевести макрос:

Range("A13089:M13089").Select
Range(Selection, Cells(1)).Select
Selection.Copy
Application.CutCopyMode = False
Selection.Sort Key1:=Range("E2"), Order1:=xlAscending, Header:=xlGuess, _
OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, _
DataOption1:=xlSortNormal






Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 1301
Зарегистрирован: 12.09.06
ссылка на сообщение  Отправлено: 22.05.10 23:01. Заголовок: leo пишет: Ну и как..


leo пишет:

 цитата:
Ну и как перевести макрос:



Ну я же писал уже, смотри форум ! Прежде чем спрашивать, посмотри что уже было !

Начни хотя бы с этого: http://clipper.borda.ru/?1-4-0-00000259-000-0-0-1222435021

Я не спец, по переводу.

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник


Пост N: 27
Зарегистрирован: 13.09.07
ссылка на сообщение  Отправлено: 22.05.10 23:36. Заголовок: Andrey пишет: Ну я..


Andrey пишет:


 цитата:
Ну я же писал уже, смотри форум ! Прежде чем спрашивать, посмотри что уже было !

Начни хотя бы с этого: http://clipper.borda.ru/?1-4-0-00000259-000-0-0-1222435021

Я не спец, по переводу.



Прежде чем задать вопрос я просмотрел не только то, на что вы даете ссылку, но и
более подробную статью Владимира Максимова( см. например
http://www.codenet.ru/db/vfp/Excel-To-FoxPro.php ). И хотя она для VFP, но на многие
вопросы я в ней ответы нашел. А вот как перевести макрос по сортировке не понял.
Поэтому обратился к тем, кто уже сталкивался с моими проблемами. Вообще-то это небольшая
часть моей проблемы. Более подробно ее можно описать так: есть таблица, в которой часть
столбцов(в том числе и мой) защищена. В этом столбце фамилия записана не так как ее записывают
"нормальные" люди. Всем нужно фимилия, имя и отчество, а у меня имя, отчество и затем фамилия.
Необходимо временно снять защиту(пароль я знаю), привести в "порядок" фамилию и затем
отсортировать информацию по фамилии. Вот такой заказ. Как программно снять пароль я
пока не разобрался(может кто и это подскажет), с наведением в порядок фамилий все получилось,
а вот на сортировке споткнулся. Если кто-то из участников форума с этим сталкивался - помогите.




Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник


Пост N: 931
Зарегистрирован: 09.10.06
ссылка на сообщение  Отправлено: 23.05.10 00:53. Заголовок: PROCEDURE main E..


PROCEDURE main 

Exm_MSExcel()

RETURN

STATIC PROCEDURE Exm_MSExcel()
LOCAL oExcel, oWorkBook, oWorkSheet, oAS

IF ( oExcel := win_oleCreateObject( "Excel.Application" ) ) != NIL

oWorkBook := oExcel:WorkBooks:Add()
oAS := oExcel:ActiveSheet()

WITH OBJECT oAs
// Set font for all cells
:Cells:Font:Name := "Arial"
:Cells:Font:Size := 12

:Cells( 1, 1 ):Value := "OLE from Harbour"
:Cells( 1, 1 ):Font:Size := 16

:Cells( 3, 1 ):Value := "String:"
:Cells( 3, 2 ):Value := "Hello, World!"
:Cells( 4, 1 ):Value := "Numeric:"
:Cells( 4, 2 ):Value := 1234.56
:Cells( 5, 1 ):Value := "Logical:"
:Cells( 5, 2 ):Value := .T.
:Cells( 6, 1 ):Value := "Date:"
:Cells( 6, 2 ):Value := DATE()
:Cells( 7, 1 ):Value := "Timestamp:"
:Cells( 7, 2 ):Value := HB_DATETIME()

// Some formatting
:Columns( 1 ):Font:Bold := .T.
:Columns( 2 ):HorizontalAlignment := -4152 // xlRight

:Columns( 1 ):AutoFit()
:Columns( 2 ):AutoFit()
:Columns( 3 ):AutoFit()
:Columns( 4 ):AutoFit()

:Cells( 3, 2 ):Font:ColorIndex := 3 // red

:Range( "A1:B1" ):HorizontalAlignment := 7
:Range( "A3:B7" ):Select()

:Range( "A3:B7" ):Sort( oAS:Range("A4"), 1 /*xlAscending*/ )
ENDWITH

oAs:Protect( "password" )
//oAs:UnProtect( "password" )

oExcel:Visible := .T.

//oExcel:Quit()
ELSE
? "Error: MS Excel not available. [" + win_oleErrorText()+ "]"
ENDIF


Спасибо: 1 
ПрофильЦитата Ответить
постоянный участник


Пост N: 28
Зарегистрирован: 13.09.07
ссылка на сообщение  Отправлено: 23.05.10 11:38. Заголовок: Петр Ог..


Петр

Огромное спасибо, все получилось!


Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник


Пост N: 933
Зарегистрирован: 09.10.06
ссылка на сообщение  Отправлено: 23.05.10 11:44. Заголовок: Огромное спасибо Да..



 цитата:
Огромное спасибо


Да не за что.

 цитата:
все получилось!


А по другому и быть не могло, куда оно от нас денется

Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 19
Зарегистрирован: 22.09.13
ссылка на сообщение  Отправлено: 28.02.17 01:03. Заголовок: leo пишет: Огромное..


leo пишет:

 цитата:
Огромное спасибо, все получилось!


Подскажите, как в данной концепции, сделать сортировку по двум столбцам? В VBA все красиво, но никак не получается сделать перевод.
Перерыл форум, но ничего не нашел...

Спасибо: 0 
ПрофильЦитата Ответить
Ответ:
1 2 3 4 5 6 7 8 9
большой шрифт малый шрифт надстрочный подстрочный заголовок большой заголовок видео с youtube.com картинка из интернета картинка с компьютера ссылка файл с компьютера русская клавиатура транслитератор  цитата  кавычки моноширинный шрифт моноширинный шрифт горизонтальная линия отступ точка LI бегущая строка оффтопик свернутый текст

показывать это сообщение только модераторам
не делать ссылки активными
Имя, пароль:      зарегистрироваться    
Тему читают:
- участник сейчас на форуме
- участник вне форума
Все даты в формате GMT  3 час. Хитов сегодня: 555
Права: смайлы да, картинки да, шрифты да, голосования нет
аватары да, автозамена ссылок вкл, премодерация откл, правка нет