powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / перевод VBA в VFP 1-а строка
36 сообщений из 36, показаны все 2 страниц
перевод VBA в VFP 1-а строка
    #35129352
Vitalь
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Как это перевести, помогите пожалуйста

Файл шаблон *.xlt создан в Excel 97
открываю
objExcel.WorkBooks.Open(cFileNameIn)
теперь этот шаблон нужно сохранить в другом файле, в формате Excel97
код на VBA
*//ActiveWorkbook.SaveAs FileName:="C:\1111111111.xls", FileFormat:= _
*// xlExcel9795, Password:="", WriteResPassword:="", ReadOnlyRecommended:= _
*// False, CreateBackup:=False
помогите перевести строку в VFP9SP2
...
Рейтинг: 0 / 0
перевод VBA в VFP 1-а строка
    #35129403
Galyamov Rinat
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
"Vitalь" <nospam@sql.ru>; сообщил/сообщила в новостях следующее:
news:5282437@sql.ru...
> Автор: Vitalь
> Как это перевести, помогите пожалуйста
>
> Файл шаблон *.xlt создан в Excel 97
> открываю
> objExcel.WorkBooks.Open(cFileNameIn)
> теперь этот шаблон нужно сохранить в другом файле, в формате Excel97
> код на VBA
> *//ActiveWorkbook.SaveAs FileName:="C:\1111111111.xls", FileFormat:=
> _
> *// xlExcel9795, Password:="", WriteResPassword:="",
> ReadOnlyRecommended:= _
> *// False, CreateBackup:=False
> помогите перевести строку в VFP9SP2

xlExcel9795 = 43 - это числовая константа - можно использовать число, можно
через define определить

и не ActiveWorkbook. , а loXLSDoc. - так будет понятней.

xlExcel9795 = 43
objExcel=CREATEOBJECT("Excel.Application")

loXLSDoc = objExcel.WorkBooks.Open(GETFILE())

loXLSDoc.SaveAs("C:\1111111111.xls",xlExcel9795,"","",.f.,.f.)

objExcel.Quit


Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
перевод VBA в VFP 1-а строка
    #35129436
Фотография Aleksey-K
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Galyamov Rinat

"Vitalь" <nospam@sql.ru>; сообщил/сообщила в новостях следующее:
news:5282437@sql.ru...
> Автор: Vitalь
> Как это перевести, помогите пожалуйста
>
> Файл шаблон *.xlt создан в Excel 97
> открываю
> objExcel.WorkBooks.Open(cFileNameIn)
> теперь этот шаблон нужно сохранить в другом файле, в формате Excel97
> код на VBA
> *//ActiveWorkbook.SaveAs FileName:="C:\1111111111.xls", FileFormat:=
> _
> *// xlExcel9795, Password:="", WriteResPassword:="",
> ReadOnlyRecommended:= _
> *// False, CreateBackup:=False
> помогите перевести строку в VFP9SP2

xlExcel9795 = 43 - это числовая константа - можно использовать число, можно
через define определить

и не ActiveWorkbook. , а loXLSDoc. - так будет понятней.

xlExcel9795 = 43
objExcel=CREATEOBJECT("Excel.Application")

loXLSDoc = objExcel.WorkBooks.Open(GETFILE())

loXLSDoc.SaveAs("C:\1111111111.xls",xlExcel9795,"","",.f.,.f.)

objExcel.Quit

Ренат, а вы пробовали сами все это проделать?
Я имею в виду команду loXLSDoc.SaveAs("C:\1111111111.xls",xlExcel9795,"","",.f.,.f.) ?
С уважением, Алексей
...
Рейтинг: 0 / 0
перевод VBA в VFP 1-а строка
    #35129466
Vitalь
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вот мой код ...
#DEFINE xlExcel9795 43
cFileNameIn = 'D:\DRP\ZExpert\Other\Shablon\ZayaonEx.xlt'
cFileNameOut = 'c:\test.xls'
objExcel = GETOBJECT("", "Excel.Application")
IF VARTYPE(objExcel) <> "O" OR ISNULL(objExcel)
RETURN .F.
ELSE
objExcel.WorkBooks.Open(cFileNameIn)
*// VBA >>>
*//ActiveWorkbook.SaveAs FileName:="C:\1111111111.xls", FileFormat:= _
*// xlExcel9795, Password:="", WriteResPassword:="", ReadOnlyRecommended:= _
*// False, CreateBackup:=False
*// VBA <<<
*// objExcel.ActiveWorkbook.SaveAs(cFileNameOut,xlExcel9795,'','',False,False) -- не работает
*// objExcel.ActiveWorkbook.SaveAs(cFileNameOut,xlExcel9795,'','',.F.,.F.) -- не работает
*// objExcel.ActiveWorkbook.SaveAs(cFileNameOut,xlExcel9795) - не работает
objExcel.DisplayAlerts = .F.
objExcel.Visible = .F.
objExcel.Save
* эксель становится видимым на экране
objExcel.Visible = .T.
RELEASE objExcel
ENDIF
...
Рейтинг: 0 / 0
перевод VBA в VFP 1-а строка
    #35129472
Фотография Aleksey-K
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
VitalьВот мой код ...
#DEFINE xlExcel9795 43
cFileNameIn = 'D:\DRP\ZExpert\Other\Shablon\ZayaonEx.xlt'
cFileNameOut = 'c:\test.xls'
objExcel = GETOBJECT("", "Excel.Application")
IF VARTYPE(objExcel) <> "O" OR ISNULL(objExcel)
RETURN .F.
ELSE
objExcel.WorkBooks.Open(cFileNameIn)
*// VBA >>>
*//ActiveWorkbook.SaveAs FileName:="C:\1111111111.xls", FileFormat:= _
*// xlExcel9795, Password:="", WriteResPassword:="", ReadOnlyRecommended:= _
*// False, CreateBackup:=False
*// VBA <<<
*// objExcel.ActiveWorkbook.SaveAs(cFileNameOut,xlExcel9795,'','',False,False) -- не работает
*// objExcel.ActiveWorkbook.SaveAs(cFileNameOut,xlExcel9795,'','',.F.,.F.) -- не работает
*// objExcel.ActiveWorkbook.SaveAs(cFileNameOut,xlExcel9795) - не работает
objExcel.DisplayAlerts = .F.
objExcel.Visible = .F.
objExcel.Save
* эксель становится видимым на экране
objExcel.Visible = .T.
RELEASE objExcel
ENDIF
А у вас часом OFFICE не 2007 ?
С уважением, Алексей
...
Рейтинг: 0 / 0
перевод VBA в VFP 1-а строка
    #35129487
Galyamov Rinat
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
> Ренат, а вы пробовали сами все это проделать?
Ринат.

> Я имею в виду команду
> loXLSDoc.SaveAs("C:\1111111111.xls",xlExcel9795,"","",.f.,.f.) ?
Обязательно! Весь этот кусок целиком.

Это все? или у вас еще какой вопрос?


Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
перевод VBA в VFP 1-а строка
    #35129502
Фотография Aleksey-K
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Galyamov Rinat
> Ренат, а вы пробовали сами все это проделать?
Ринат.

> Я имею в виду команду
> loXLSDoc.SaveAs("C:\1111111111.xls",xlExcel9795,"","",.f.,.f.) ?
Обязательно! Весь этот кусок целиком.

Это все? или у вас еще какой вопрос?
И у вас это работает на Office 2007 ?
Больше вопросов нет.
...
Рейтинг: 0 / 0
перевод VBA в VFP 1-а строка
    #35129517
Galyamov Rinat
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вот этот кусок отработал на УРА.

Действительно, может с офисом чего связано?





#DEFINE xlExcel9795 43

cFileNameIn = 'd:\__Паспортизация\_паспорт1.XLS'

cFileNameOut = 'c:\test.xls'

objExcel = GETOBJECT("", "Excel.Application")

IF VARTYPE(objExcel) <> "O" OR ISNULL(objExcel)

RETURN .F.

ELSE

objExcel.WorkBooks.Open(cFileNameIn)

objExcel.ActiveWorkbook.SaveAs(cFileNameOut,xlExcel9795,"","",.F.,.F.)

*//
objExcel.ActiveWorkbook.SaveAs(cFileNameOut,xlExcel9795,'','',.F.,.F.) -- не
работает

*// objExcel.ActiveWorkbook.SaveAs(cFileNameOut,xlExcel9795) - не работает

objExcel.DisplayAlerts = .F.

objExcel.Visible = .F.

objExcel.Save

* эксель становится видимым на экране

objExcel.Visible = .T.

RELEASE objExcel

ENDIF


Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
перевод VBA в VFP 1-а строка
    #35129529
Фотография Aleksey-K
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Galyamov Rinat
Вот этот кусок отработал на УРА.

Действительно, может с офисом чего связано?





#DEFINE xlExcel9795 43

cFileNameIn = 'd:\__Паспортизация\_паспорт1.XLS'

cFileNameOut = 'c:\test.xls'

objExcel = GETOBJECT("", "Excel.Application")

IF VARTYPE(objExcel) <> "O" OR ISNULL(objExcel)

RETURN .F.

ELSE

objExcel.WorkBooks.Open(cFileNameIn)

objExcel.ActiveWorkbook.SaveAs(cFileNameOut,xlExcel9795,"","",.F.,.F.)

*//
objExcel.ActiveWorkbook.SaveAs(cFileNameOut,xlExcel9795,'','',.F.,.F.) -- не
работает

*// objExcel.ActiveWorkbook.SaveAs(cFileNameOut,xlExcel9795) - не работает

objExcel.DisplayAlerts = .F.

objExcel.Visible = .F.

objExcel.Save

* эксель становится видимым на экране

objExcel.Visible = .T.

RELEASE objExcel

ENDIF




Да на ура, на ура. У всех проходит, проходил...
А вы его попробуйте на Excel 2007 прогнать и скажите, какой у вас результат.
С уважением, Алексей
...
Рейтинг: 0 / 0
перевод VBA в VFP 1-а строка
    #35129530
Vitalь
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
стоит на машине
вначале был установлен Excel 2007
затем Excel 97
...
Рейтинг: 0 / 0
перевод VBA в VFP 1-а строка
    #35129539
Galyamov Rinat
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
И еще раз говорю, что лучше использовать прямую ссылку на книгу, которую ты
получаешь при открытии файла:

loXLSDoc = objExcel.WorkBooks.Open(GETFILE())

loXLSDoc - вот эта ссылка на твой объект, которая в твоем примере совпадает
с objExcel.ActiveWorkbook., но это не всегда так.
Например тебе надо будет тусовать книги, из одной копировать в другую. Тогда
ты со своим "ActiveWorkbook" напаришсься так, что тебе никто не позовидует.


> loXLSDoc.SaveAs("C:\1111111111.xls",xlExcel9795,"","",.f.,.f.)


Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
перевод VBA в VFP 1-а строка
    #35129552
Galyamov Rinat
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
> Да на ура, на ура. У всех проходит, проходил...
> А вы его попробуйте на Excel 2007 прогнать и скажите, какой у вас
> результат.

Нету под рукой. И пока не горю желанием на него переползать.
Такое ощущение, что ты меня упрекаешь в том, что на остальных офисах это
работает.


Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
перевод VBA в VFP 1-а строка
    #35129557
Galyamov Rinat
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
> вначале был установлен Excel 2007
> затем Excel 97

А ты уверен, что константа xlExcel9795 была уже определена в 97 офисе???


Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
перевод VBA в VFP 1-а строка
    #35129586
Vitalь
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
да уверен, взята из файла XL97Cons.h
...
Рейтинг: 0 / 0
перевод VBA в VFP 1-а строка
    #35129634
Galyamov Rinat
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Перечитал твой вопрос.

>Файл шаблон *.xlt создан в Excel 97 открываю
>objExcel.WorkBooks.Open(cFileNameIn)
>теперь этот шаблон нужно сохранить в другом файле, в формате Excel97 код на
>VBA

Я правильно понял. что тебе по сути надо просто его скопировать некую
шаблонную форму и заполнить?

Чтобы не было таких заморочек с версией офиса - создай просто xls (руками) и
его уже копируй и сохраняй (save, а не saveAs).


Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
перевод VBA в VFP 1-а строка
    #35129640
Galyamov Rinat
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Копировать можно даже средствами самого фокса.


Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
перевод VBA в VFP 1-а строка
    #35129707
AleksMed
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
1. Excel 2007 не воспринимает константу xlExcel9795 для метода Workbook.SaveAs, хотя она и приведена в списке констант в хелпе. Баг это или что то другое - не знаю
2.
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
LOCAL loXls as Excel.Application, loBook as Excel.Workbook, loSheet as Excel.Worksheet

#DEFINE xlExcel9795	 43 	
#DEFINE xlExcel8	 56 	

loXls = CREATEOBJECT("Excel.Application")
loXls.Visible = .T.
loBook = loXls.Workbooks.Add()
loSheet = loBook.Worksheets( 1 )
loSheet.Range("A1").Value = "Test"

loBook.SaveAs('C:\Tmp\Test.xls', xlExcel8)
3. Если используешь XLT шаблон, то не надо делать Workbooks.Open(), лучше Workbook.Add("TemplateFileName.xlt")
...
Рейтинг: 0 / 0
перевод VBA в VFP 1-а строка
    #35129723
AleksMed
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Galyamov Rinat
Чтобы не было таких заморочек с версией офиса - создай просто xls (руками) и
его уже копируй и сохраняй (save, а не saveAs).


Posted via ActualForum NNTP Server 1.4
Чтоб не было заморочек, нужно просто правильно работать с шаблонами. (без обид)
...
Рейтинг: 0 / 0
перевод VBA в VFP 1-а строка
    #35129735
Фотография Aleksey-K
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AleksMed1. Excel 2007 не воспринимает константу xlExcel9795 для метода Workbook.SaveAs, хотя она и приведена в списке констант в хелпе. Баг это или что то другое - не знаю
2.
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
LOCAL loXls as Excel.Application, loBook as Excel.Workbook, loSheet as Excel.Worksheet

#DEFINE xlExcel9795	 43 	
#DEFINE xlExcel8	 56 	

loXls = CREATEOBJECT("Excel.Application")
loXls.Visible = .T.
loBook = loXls.Workbooks.Add()
loSheet = loBook.Worksheets( 1 )
loSheet.Range("A1").Value = "Test"

loBook.SaveAs('C:\Tmp\Test.xls', xlExcel8)
3. Если используешь XLT шаблон, то не надо делать Workbooks.Open(), лучше Workbook.Add("TemplateFileName.xlt")
Точно... Спасибо. Получилось теперь SaveAs с более, чем один параметром и в Office 2007!
Я так понимаю, что он не константу не воспринимает, а не может сохранять в формате очень старого Excel.
С уважением, Алексей.
...
Рейтинг: 0 / 0
перевод VBA в VFP 1-а строка
    #35129876
AleksMed
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Aleksey-K Я так понимаю, что он не константу не воспринимает, а не может сохранять в формате очень старого Excel.
Нет, сохранить с старом формате он может. Только у него теперь деление:
xlExcel8 - Excel 97-2003
xlExcel5 - Excel 5/95
Это видно если поиграться записью макроса при SaveAs.

Похоже что в хелпе не подчистили список констант или что то другое.
...
Рейтинг: 0 / 0
перевод VBA в VFP 1-а строка
    #35129893
Galyamov Rinat
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
> Чтобы не было таких заморочек с версией офиса - создай просто
> xls (руками) и
> его уже копируй и сохраняй (save, а не saveAs).
>
> Чтоб не было заморочек, нужно просто правильно работать с шаблонами.
> (без обид)

Обид нет и быть не может.
Работать надо правильно всегда и со всем.


Только поясни, если правильно работать с шаблоном, как сохранить файл
созданый на его основе в документорованном формате 97 экселя?

Твоя цитата:
1. Excel 2007 не воспринимает константу xlExcel9795 для метода
Workbook.SaveAs, хотя она и приведена в списке констант в хелпе. Баг это или
что то другое - не знаю.


Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
перевод VBA в VFP 1-а строка
    #35129903
AleksMed
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Galyamov Rinat
Только поясни, если правильно работать с шаблоном, как сохранить файл
созданый на его основе в документорованном формате 97 экселя?

Твоя цитата:
1. Excel 2007 не воспринимает константу xlExcel9795 для метода
Workbook.SaveAs, хотя она и приведена в списке констант в хелпе. Баг это или
что то другое - не знаю.

Posted via ActualForum NNTP Server 1.4

Так я уже показал в своём первом посте как это сделать :)
...
Рейтинг: 0 / 0
перевод VBA в VFP 1-а строка
    #35129910
Фотография Aleksey-K
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AleksMed Aleksey-K Я так понимаю, что он не константу не воспринимает, а не может сохранять в формате очень старого Excel.
Нет, сохранить с старом формате он может. Только у него теперь деление:
xlExcel8 - Excel 97-2003
xlExcel5 - Excel 5/95
Это видно если поиграться записью макроса при SaveAs.

Похоже что в хелпе не подчистили список констант или что то другое.
А что-то я при записи из самого Excel 2007 в списке форматов не вижу Excel 5/95 ?
Excel 97-2003 есть, а Excel 5/95 не вижу!
С уважением, Алексей
...
Рейтинг: 0 / 0
перевод VBA в VFP 1-а строка
    #35129911
Galyamov Rinat
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
> Нет, сохранить с старом формате он может. Только у него теперь
> деление:
> xlExcel8 - Excel 97-2003
> xlExcel5 - Excel 5/95
> Это видно если поиграться записью макроса при SaveAs.
>
> Похоже что в хелпе не подчистили список констант или что то другое.

Странно, что заменили разделение и самое странное, что убрали декларирванные
имиже константы.
Наверное просто забыли добавить обработку некоторых констант.


Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
перевод VBA в VFP 1-а строка
    #35129921
AleksMed
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Aleksey-K AleksMed Aleksey-K Я так понимаю, что он не константу не воспринимает, а не может сохранять в формате очень старого Excel.
Нет, сохранить с старом формате он может. Только у него теперь деление:
xlExcel8 - Excel 97-2003
xlExcel5 - Excel 5/95
Это видно если поиграться записью макроса при SaveAs.

Похоже что в хелпе не подчистили список констант или что то другое.
А что-то я при записи из самого Excel 2007 в списке форматов не вижу Excel 5/95 ?
Excel 97-2003 есть, а Excel 5/95 не вижу!
С уважением, Алексей
Так как формат древний, то добраться до него можно через Save As - Other formats
...
Рейтинг: 0 / 0
перевод VBA в VFP 1-а строка
    #35129932
Фотография Aleksey-K
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Да. точно есть.
С уважением, Алексей
...
Рейтинг: 0 / 0
перевод VBA в VFP 1-а строка
    #35130029
Vitalь
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Нужно, что бы код работал на машинах с установленными версиями оффиса от 97 до 2007
...
Рейтинг: 0 / 0
перевод VBA в VFP 1-а строка
    #35130040
AleksMed
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
VitalьНужно, что бы код работал на машинах с установленными версиями оффиса от 97 до 2007
loWorkbook.SaveAs("FileName.xls", xlExcel8)
...
Рейтинг: 0 / 0
перевод VBA в VFP 1-а строка
    #35130501
Vitalь
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
работает на машине, с установленным excel 2003
objExcel.ActiveWorkbook.SaveAs(cFileNameOut,xlExcel9795)
работает на машине, с установленным excel 2007, но не работает с установленным excel 2003
objExcel.ActiveWorkbook.SaveAs(cFileNameOut,xlExcel8)

подскажите, чего придумать ?
...
Рейтинг: 0 / 0
перевод VBA в VFP 1-а строка
    #35130535
AleksMed
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Vitalьработает на машине, с установленным excel 2003
objExcel.ActiveWorkbook.SaveAs(cFileNameOut,xlExcel9795)
работает на машине, с установленным excel 2007, но не работает с установленным excel 2003
objExcel.ActiveWorkbook.SaveAs(cFileNameOut,xlExcel8)

подскажите, чего придумать ?
YНу пляши от objExcel.Version и подставляй соответствующую константу.
...
Рейтинг: 0 / 0
перевод VBA в VFP 1-а строка
    #35130615
Galyamov Rinat
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
> Ну пляши от objExcel.Version и подставляй соответствующую константу.

Или как я тебе уже говорил, пока меня не перебили:

Чтобы не было таких заморочек с версией офиса - создай просто xls (документ,
а не шаблон) нужной версии (руками) и
его уже копируй, наполняй и сохраняй (save с одним параметром, а не saveAs).


Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
перевод VBA в VFP 1-а строка
    #35130638
Фотография Aleksey-K
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Galyamov Rinat

> Ну пляши от objExcel.Version и подставляй соответствующую константу.

Или как я тебе уже говорил, пока меня не перебили:

Чтобы не было таких заморочек с версией офиса - создай просто xls (документ,
а не шаблон) нужной версии (руками) и
его уже копируй, наполняй и сохраняй (save с одним параметром, а не saveAs).

Прошу прощение, что опять Вас перебиваю, но вы все-таки проверяйте, что советуете!
1 .Save НЕ работает и с одним параметром - только без параметров.
2. А вот SaveAs работает с одним параметром (имя файла) в любой версии EXCEL.
С уважнием, Алексей
...
Рейтинг: 0 / 0
перевод VBA в VFP 1-а строка
    #35130689
AleksMed
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Добавчик.
Если создать XLS файл формата Excel 5/95, то в Excel 2007 Workbook.Save не сработает.
Программа вылетит по ошибке. Мало того, если потом попробовать сохранить сформированный файл нажатием кнопки "Сохранить" в Экселе, то он выдаст предупреждение, а за ним диалог Save As
...
Рейтинг: 0 / 0
перевод VBA в VFP 1-а строка
    #35130762
AleksMed
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Добавчик - II
Если создать XLS файл формата Excel 97-2002 & 5/95 ... (далее по тексту)
...
Рейтинг: 0 / 0
перевод VBA в VFP 1-а строка
    #35130993
Galyamov Rinat
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
"Aleksey-K" <nospam@sql.ru>; сообщил/сообщила в новостях следующее:
news:5285384@sql.ru...
> Автор: Aleksey-K
> Galyamov Rinat
>
>
> > Ну пляши от objExcel.Version и подставляй соответствующую
> константу.
>
> Или как я тебе уже говорил, пока меня не перебили:
>
> Чтобы не было таких заморочек с версией офиса - создай просто
> xls (документ,
> а не шаблон) нужной версии (руками) и
> его уже копируй, наполняй и сохраняй (save с одним параметром,
> а не saveAs).
>
>
> Прошу прощение, что опять Вас перебиваю, но вы все-таки проверяйте,
> что советуете!
А почему ты считаешь. что я не проверяю???

> 1 .Save НЕ работает и с одним параметром - только без параметров.
Может все таки офис 2007 сильно переделали VBA?

Этот кусок работает ДЛЯ AleksMed - файл
"d:\__Паспортизация\_паспорт1.XLS" - создан как excel95

#DEFINE xlExcel9795 43

cFileNameIn = 'd:\__Паспортизация\_паспорт1.XLS'

cFileNameOut = 'c:\test.xls'

objExcel = GETOBJECT("", "Excel.Application")

IF VARTYPE(objExcel) <> "O" OR ISNULL(objExcel)

RETURN .F.

ELSE

objExcel.DisplayAlerts = .F.

objExcel.WorkBooks.Open(cFileNameIn)



objExcel.ActiveWorkbook.Sheets(1).cells(1,1).value='Изменилось ли???'

objExcel.ActiveWorkbook.Save()

objExcel.quit

RELEASE objExcel

ENDIF

Файл "d:\__Паспортизация\_паспорт1.XLS" остается в том же формате
(excel95)


> 2. А вот SaveAs работает с одним параметром (имя файла) в любой
> версии EXCEL.
Цитата из HELP`а к microsoft Visual Basic 6.5 (от office execl 2003 SP3)

Saves changes to the specified workbook.

expression.Save

expression Required. An expression that returns a Workbook object.

Remarks
To open a workbook file, use the Open method.

To mark a workbook as saved without writing it to a disk, set its Saved
property to True.

The first time you save a workbook, use the SaveAs method to specify a name
for the file.

Example
This example saves the active workbook.

ActiveWorkbook.Save
This example saves all open workbooks and then closes Microsoft Excel.

For Each w In Application.Workbooks
w.Save
Next w
Application.Quit


Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
перевод VBA в VFP 1-а строка
    #35130999
Galyamov Rinat
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
> Прошу прощение, что опять Вас перебиваю, но вы все-таки проверяйте,
> что советуете!
> 1 .Save НЕ работает и с одним параметром - только без параметров.

Ну да. Без параметров. Твоя правда. Руки про параметр поторопились написать.

Кусок примера выслал.

Описание как оно должно работать:
Есть файл *.xls - шаблон.

Скопировали его куда нужно.
Из фокса через оле открыли, изменили, сохранили, если надо показали и т.п.

Получили что хотели - пошли пить пиво ;-)


Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
36 сообщений из 36, показаны все 2 страниц
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / перевод VBA в VFP 1-а строка
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]