powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / VFP - EXCEL
18 сообщений из 18, страница 1 из 1
VFP - EXCEL
    #32920670
Anatol_Ku
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Подскажите пожалуйста , как две(3,4,...) таблицы выгрузить в одну книгу ЕХСЕL , чтобы каждый DBF попал на отдельный Sheet .
...
Рейтинг: 0 / 0
VFP - EXCEL
    #32920704
leaf
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ручками пошагово
или в разные книги и объеденить через буфер обмена
...
Рейтинг: 0 / 0
VFP - EXCEL
    #32920910
Фотография Владимир СА
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Anatol_KuПодскажите пожалуйста , как две(3,4,...) таблицы выгрузить в одну книгу ЕХСЕL , чтобы каждый DBF попал на отдельный Sheet .
Если работа одноразовая, то
EXPORT TO FileName [TYPE]
DIF | MOD | SYLK | WK1 | WKS | WR1 | WRK | XLS | XL5
[FIELDS FieldList] [Scope] [FOR lExpression1] [WHILE lExpression2]
[NOOPTIMIZE] [AS nCodePage]
А если програмно, то хорошо описано в книге Менахем Базиян "Использование Visual FoxPro 6", стр.668, Создание Excel-отчета.
...
Рейтинг: 0 / 0
VFP - EXCEL
    #32925471
VictoryS
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Попробуй так!

*!* set step on
****************

SET OLEOBJECT ON
public oleZvit


dovtel = SYS(5)+SYS(2003)+[\TelD_XLS\f_tdn.xls]
oleZvit = GETOBJECT(dovtel,"EXCEL.Sheet")
oleZvit.application.Visible = .T.
oleZvit = GETOBJECT(,"EXCEL.Application")
*!* oleZvit.application.WorkBooks.Open([d:\TelD_XLS\f_td.xls])
oleZvit.application.WorkBooks.Open(dovtel)
*!* oleZvit.application.Range([A1]).Select
oleZvit.application.ActiveWindow.Zoom = 75
oleZvit.application.ActiveWindow.Selection.Font.Size = 14 && !!!!
oleZvit.application.ActiveWindow.DisplayZeros = .F.
oleZvit.application.Visible = .T.
oleZvit.application.Sheets("List1").Select
oleZvit.application.Cells( 2, 3).Value = [ñòàíîì íà ]+ALLTRIM(DTOC(DATE()))
oleZvit.application.Range([A5]).Select
oleZvit.application.Range([A5:E5]).Select
oleZvit.application.Range([A5]).Select
Use mfutel!vtel_mfu
lTel_mfu = RECCOUNT()
*!* lTel_mfu = 70
nRow = 5
nStor= 1
nnS = 0
True = .T.
xlLeft = 2
xlCenter = 3
xlTop = 1


RELEASE aDOVTEL
SELECT DISTINCT Tel_mfu.ind_p, Tel_mfu.room, Tel_mfu.name_p,;
Tel_mfu.posada, Tel_mfu.pib1, Tel_mfu.pib2, Tel_mfu.pib3, Tel_mfu.tel_10,;
Tel_mfu.tel_vn, Tel_mfu.tel_zn, Tel_mfu.tel_ho, Tel_mfu.korp, Tel_mfu.unicod;
FROM mfutel!tel_mfu;
WHERE Tel_mfu.out = [1];
ORDER BY Tel_mfu.ind_p, Tel_mfu.poryad;
INTO ARRAY aDOVTEL
For nInd = 1 TO lTel_mfu
IF nStor == 1
nnnS = 17
ELSE
nnnS = 17
ENDIF
nnS = nnS + 1
IF nnS == nnnS
oleZvit.application.Cells(nRow, 1).Select

*!* oleZvit.ActiveWindow.SelectedSheets.Selection.Rows.AutoFit
oleZvit.ActiveWindow.SelectedSheets.HPageBreaks.Add(oleZvit.Cells(nRow,1))
nnS = 0
nStor = nStor + 1
ENDIF
*!* Selection.Rows.AutoFit
*!* oleZvit.application.Cells(nRow, 1).Value = alltrim(aDOVTEL(nInd, 1))
oleZvit.application.Cells(nRow, 1).Select
oleZvit.application.Selection.RowHeight = 36
oleZvit.application.Selection.WrapText = True
oleZvit.application.Selection.HorizontalAlignment = xlCenter
oleZvit.application.Cells(nRow, 2).Select
oleZvit.application.Selection.RowHeight = 36
oleZvit.application.Selection.WrapText = True
oleZvit.application.Cells(nRow, 3).Select
oleZvit.application.Selection.RowHeight = 36
oleZvit.application.Selection.WrapText = True
oleZvit.application.Cells(nRow, 4).Select
oleZvit.application.Selection.RowHeight = 36
oleZvit.application.Selection.WrapText = True
oleZvit.application.Cells(nRow, 5).Select
oleZvit.application.Selection.RowHeight = 36
oleZvit.application.Selection.WrapText = True

oleZvit.application.Cells(nRow, 1).Value = alltrim(aDOVTEL(nInd, 2))
*!* oleZvit.application.Cells(nRow, 3).Value = alltrim(aDOVTEL(nInd, 3))

oleZvit.application.Cells(nRow, 2).Value = alltrim(aDOVTEL(nInd, 4))
oleZvit.application.Cells(nRow, 3).Value = alltrim(aDOVTEL(nInd, 5))+" "+alltrim(aDOVTEL(nInd, 6))+" "+alltrim(aDOVTEL(nInd, 7))
&& oleZvit.application.Cells(nRow, 6).Value = alltrim(aDOVTEL(nInd, 6))
&& oleZvit.application.Cells(nRow, 5).Value = alltrim(aDOVTEL(nInd, 7))
oleZvit.application.Cells(nRow, 4).Value = alltrim(aDOVTEL(nInd, 8))+" "+alltrim(aDOVTEL(nInd, 9))
*!* oleZvit.application.Cells(nRow, 6).Value = alltrim(aDOVTEL(nInd, 8))
*!* oleZvit.application.Cells(nRow, 7).Value = alltrim(aDOVTEL(nInd, 9))
oleZvit.application.Cells(nRow, 5).Value = alltrim(aDOVTEL(nInd,10))
*!* oleZvit.application.Cells(nRow, 9).Value = alltrim(aDOVTEL(nInd,11))
*!* oleZvit.application.Cells(nRow,10).Value = alltrim(aDOVTEL(nInd,12))
oleZvit.application.Cells(nRow, 6).Value = alltrim(STR(nStor))
oleZvit.application.Cells(nRow+1, 1).Select
oleZvit.application.Selection.RowHeight = 8
nRow = nRow + 2

update Tel_mfu SET paged = nStor WHERE Tel_mfu.unicod = alltrim(aDOVTEL(nInd,13))
ENDFOR

*************List2
Use mfutel!vpib
lpib = RECCOUNT()
*!* lpib = 70
oleZvit.application.ActiveWindow.Zoom = 75
oleZvit.application.ActiveWindow.Selection.Font.Size = 14
oleZvit.application.ActiveWindow.Selection.Font.Name = "Times New Roman"
oleZvit.application.ActiveWindow.DisplayZeros = .F.
oleZvit.application.Visible = .T.
oleZvit.application.Sheets("List2").Select
oleZvit.application.Visible = .T.
oleZvit.application.Range([A3]).Select
nRow = 5
RELEASE aPIB
SELECT DISTINCT ALLTRIM(Tel_mfu.pib1) +" "+ ALLTRIM(Tel_mfu.pib2) +" "+ ALLTRIM(Tel_mfu.pib3) AS pib,;
Tel_mfu.tel_10, Tel_mfu.tel_zn, Tel_mfu.tel_vn, Tel_mfu.room, Tel_mfu.korp,;
Tel_mfu.paged;
FROM mfutel!tel_mfu;
WHERE Tel_mfu.out = "1";
AND Tel_mfu.pib1 <> " ";
ORDER BY 1;
INTO ARRAY aPIB
For nInd = 1 TO lpib
oleZvit.application.Cells(nRow, 1).Select
oleZvit.application.Selection.HorizontalAlignment = xlLeft
oleZvit.application.Selection.VerticalAlignment = xlTop
oleZvit.application.ActiveWindow.Selection.Font.Name = "Times New Roman"
oleZvit.application.ActiveWindow.Selection.Font.Size = 14
oleZvit.application.ActiveWindow.Selection.RowHeight = 18
oleZvit.application.ActiveWindow.Selection.Rows.AutoFit
oleZvit.application.Selection.WrapText = True
oleZvit.application.Cells(nRow, 2).Select
oleZvit.application.Selection.HorizontalAlignment = xlCenter
oleZvit.application.Selection.VerticalAlignment = xlTop
oleZvit.application.ActiveWindow.Selection.Font.Name = "Times New Roman"
oleZvit.application.ActiveWindow.Selection.Font.Size = 14
oleZvit.application.Selection.WrapText = True
oleZvit.application.Cells(nRow, 3).Select
oleZvit.application.Selection.HorizontalAlignment = xlCenter
oleZvit.application.Selection.VerticalAlignment = xlTop
oleZvit.application.ActiveWindow.Selection.Font.Name = "Times New Roman"
oleZvit.application.ActiveWindow.Selection.Font.Size = 14
oleZvit.application.Selection.WrapText = True
oleZvit.application.Cells(nRow, 4).Select
oleZvit.application.Selection.HorizontalAlignment = xlCenter
oleZvit.application.Selection.VerticalAlignment = xlTop
oleZvit.application.ActiveWindow.Selection.Font.Name = "Times New Roman"
oleZvit.application.ActiveWindow.Selection.Font.Size = 14
oleZvit.application.Selection.WrapText = True
oleZvit.application.Cells(nRow, 5).Select
oleZvit.application.Selection.HorizontalAlignment = xlCenter
oleZvit.application.Selection.VerticalAlignment = xlTop
oleZvit.application.ActiveWindow.Selection.Font.Name = "Times New Roman"
oleZvit.application.ActiveWindow.Selection.Font.Size = 14
oleZvit.application.Selection.WrapText = True
oleZvit.application.Cells(nRow, 6).Select
oleZvit.application.Selection.HorizontalAlignment = xlCenter
oleZvit.application.Selection.VerticalAlignment = xlTop
oleZvit.application.ActiveWindow.Selection.Font.Name = "Times New Roman"
oleZvit.application.ActiveWindow.Selection.Font.Size = 14
oleZvit.application.Selection.WrapText = True
oleZvit.application.Cells(nRow, 7).Select
oleZvit.application.Selection.HorizontalAlignment = xlCenter
oleZvit.application.Selection.VerticalAlignment = xlTop
oleZvit.application.ActiveWindow.Selection.Font.Name = "Times New Roman"
oleZvit.application.ActiveWindow.Selection.Font.Size = 14
oleZvit.application.Selection.WrapText = True

oleZvit.application.Cells(nRow, 1).Value = alltrim(aPIB(nInd, 1))
oleZvit.application.Cells(nRow, 2).Value = alltrim(aPIB(nInd, 2))
oleZvit.application.Cells(nRow, 3).Value = alltrim(aPIB(nInd, 3))
oleZvit.application.Cells(nRow, 4).Value = alltrim(aPIB(nInd, 4))
oleZvit.application.Cells(nRow, 5).Value = alltrim(aPIB(nInd, 5))
oleZvit.application.Cells(nRow, 6).Value = alltrim(aPIB(nInd, 6))
oleZvit.application.Cells(nRow, 7).Value = alltrim(STR(aPIB(nInd, 7)))
oleZvit.application.Cells(nRow+1, 1).Select
oleZvit.application.Selection.RowHeight = 3
nRow = nRow + 2
ENDFOR
*************End List2
oleZvit.application.ActiveWorkbook.SaveAs([D:\TelD_XLS\dovtk.xls])
oleZvit.application.quit
release oleZvit
oleZvit=null
RELEASE aDOVTEL

USE
WAIT " Ðåçóëüòàòè â äèðåêòî𳿠D:\TelD_XLS\ - ôàéë dovtk.xls " WINDOW AT 30,35 TIMEOUT 3

*********************************************************
RETURN
...
Рейтинг: 0 / 0
VFP - EXCEL
    #32926925
Anatol_Ku
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Очень благодарен. Попробую
...
Рейтинг: 0 / 0
VFP - EXCEL
    #32927323
Igor Korolyov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Hi VictoryS!

Интересно, а сам то ты понимаешь ЧТО и КАК делает этот код :)

P.S. Ничего личного, но создаётся впечатление, что писалось такое после
изрядного количества принятого пива...

Posted via ActualForum NNTP Server 1.1
...
Рейтинг: 0 / 0
VFP - EXCEL
    #32928018
Фотография FM32YO aka KID
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
а что там не так Игорь? (подробно конечно не читал)
я свой самый первый экспорт так и написал было... давно правда.. потом мне стало лень шапки малевать програмно и я заюзал готовый шаблон а под шапку вставлял... потом заметил как быстро это идет на Р-166, если в отчете 1000 наименований :-)
...
Рейтинг: 0 / 0
VFP - EXCEL
    #32929533
VictoryS
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Человек задает конкретный вопрос, а его начинают посылать куда попало, или давать глупые советы.
У всех из нас бывают затруднения и бысто выйти из них - это обратиться к друзьям.
Но если руки торчат не оттуда - лучше их чесать не о клавиатуру.
...
Рейтинг: 0 / 0
VFP - EXCEL
    #32929737
Фотография ВладимирМ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
VictorySЧеловек задает конкретный вопрос, а его начинают посылать куда попало, или давать глупые советы.
У всех из нас бывают затруднения и бысто выйти из них - это обратиться к друзьям.
Но если руки торчат не оттуда - лучше их чесать не о клавиатуру.
Понимаешь, то что ты написал, возможно, работает. Но как ответ на заданный вопрос имеет ряд недостатков:

-) Ты не использовал форматирование кода (кнопочка "SRC"). В результате, код получился "слепой". Нужно затратить немало времени и сил, чтобы привести его к "читабельному" виду

-) В твоем коде нет комментариев. Тебе-то все понятно, но как с этим будет разбираться человек, задавший вопрос?

-) Даже при беглом взгляде на твой код видно, что он ужасно избыточный. Ты сделал все типичные ошибки по работе с Excel, которые только можно было сделать. Ошибки не в смысле, что это не будет работать, а ошибки в смысле, что половина команд вообще не нужна, а другую можно сильно сократить.

Anatol_Ku
Если возникает вопрос о неизвестной команде или функции в Excel. Например, как создать новый лист в Excel. То обычно включают макрорекодер в самом Excel (Сервис - Макрос - Начать запись). Далее выполняются все необходимые действия. Останавливается запись макроса и открывается полученный код (Сервис - Макрос - Макросы - Изменить)

Если выполнить создание нового листа, то в макросе будет примерно такой код:

Код: plaintext
1.
2.
3.
4.
5.
Sub Макрос1()
    Sheets("Лист1").Select
    Sheets.Add
    Sheets("Лист4").Select
    Sheets("Лист4").Name = "Новый лист"
End Sub

Как это добро адаптировать в код FoxPro? Да примерно "как есть"

Код: 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.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
* Создаем объект Excel
LOCAL comExcel as Excel.Application
comExcel=CREATEOBJECT('Excel.Application')
m.comExcel.workbooks.Add

* Делаем Excel видимым
* Эту команду надо давать в самом конце формирования листа Excel
* здесь она приведена для наглядности
m.comExcel.Visible= .T.

* Определяем количество листов в созданной книге
Local lnSheetsCount
lnSheetsCount = m.comExcel.Sheets.Count

* Добавляем нужное количество листов, если это необходимо
IF m.lnSheetsCount< 4 
	* Необходимо добавить листы ПОСЛЕ последнего, 
	* поэтому формируем ссылку на последний лист
	m.comExcel.Sheets.Add(NULL,m.comExcel.Sheets(m.lnSheetsCount), 4 -m.lnSheetsCount)
EndIf

* Одним из способов экспорта в Excel является экспорт через буфер обмена

* Сохраняем текущее значение буфера обмена
LOCAL lcClipText
lcClipText = _clipText
* вставляем текст в буфер обмена
* CHR( 9 ) - клавиша Tab - переход на следующую ячейку в текущей строке
* CHR( 13 ) - клавиша Enter - переход на следующую строку в первом столбце указанного диапазона
_cliptext='Ячейка 1:1'+CHR( 9 )+'Ячейка 1:2'+CHR( 9 )+'Ячейка 1:3'+CHR( 13 )+;
		'Ячейка 2:1'+CHR( 9 )+'Ячейка 2:2'+CHR( 9 )+'Ячейка 2:3'+CHR( 13 )+;
		'Ячейка 3:1'+CHR( 9 )+'Ячейка 3:2'+CHR( 9 )+'Ячейка 3:3'

* копируем буфер обмена в нужное место Excel на первом листе
comExcel.Sheets( 1 ).Cells( 1 , 1 ).PasteSpecial( 1 )

* еще раз копируем в другое место, но уже на втором листе
comExcel.Sheets( 2 ).Range("A5:C7").PasteSpecial( 1 )

* Данный способ предполагает передачу только ТЕКСТОВЫХ данных
* Это значит, что любые типы данных надо конвертировать в текстовые
* Без указания листа вставка идет в активный лист. В данном случае -  4 
SET DATE GERMAN 
SET CENTURY ON

_clipText = TRANSFORM( 123456 . 78 )+CHR( 9 )+TRANSFORM(DATE())
comExcel.Cells( 5 , 5 ).NumberFormat="0.00"
comExcel.Cells( 5 , 6 ).NumberFormat="m/d/yyyy"		&& такого формата может и не быть
comExcel.Cells( 5 , 5 ).PasteSpecial( 1 )
comExcel.Columns("E:F").Autofit

* Чтобы снять выделение по окончании всех вставок передаю фокус на первую ячейку
comExcel.Cells( 1 , 1 ).select()
m.comExcel.Sheets( 2 ).Select()
comExcel.Cells( 1 , 1 ).select()
m.comExcel.Sheets( 1 ).Select()
comExcel.Cells( 1 , 1 ).select()

* восстанавливаем буфер обмена
_clipText = m.lcClipText

Принципиальное отличие от макроса Excel только в том, что не нужено постоянно переводить фокус на модифицируемый объект (выполнение метода Select). Это старшно тормозит процесс экспорта, но никак не влияет на функциональность. Этот перевод фокуса понадбился только по окночании экспорта, чтобы снять выделение.

Ну, а как сформировать строку буфера обмена через сканирование таблиц (SCAN...ENDSCAN), думаю и сам сообразишь.
...
Рейтинг: 0 / 0
VFP - EXCEL
    #32929796
Igor Korolyov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Hi FM32YO aka KID!

Ну ты построчно проанализируй код и поймёшь что не так.
P.S. Дело НЕ в идеологии создания отчёта, а собственно в написании кода.

Posted via ActualForum NNTP Server 1.1
...
Рейтинг: 0 / 0
VFP - EXCEL
    #32929892
VictoryS
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ВладимируМ

Это другой разговор.
Ты джентельмент.
Спасибо.
Желаю всем продолжать в том-же духе.
...
Рейтинг: 0 / 0
VFP - EXCEL
    #32931800
Anatol_Ku
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
ВладимируМ

Большое - СПАСИБО.
Вопросов больше нет.
...
Рейтинг: 0 / 0
VFP - EXCEL
    #33405310
S866
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ВладимируМ

почемуто на VFP8 & win 98 & Excel 2002(XP) sp3
на строке :
Код: plaintext
comExcel.Sheets( 1 ).Cells( 1 , 1 ).PasteSpecial( 1 )
Выдает следующую ошибку

Хотя в winXP & VFP9 & EXCEL 2003 все работает безупречно.
...
Рейтинг: 0 / 0
VFP - EXCEL
    #33405314
S866
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
простите забыл файл прикрепить
...
Рейтинг: 0 / 0
VFP - EXCEL
    #33405476
Maltsev Max
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
А чем такой вариант не подходит ?!?
Если большие объемы проще сделать так:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
CLOSE DATABASES 
USE r:\Dogovor\Base\Spr_Dog IN  0  ALIAS Dogi
USE r:\Akcept1\Base\Spr_Post IN  0 
SELECT Dogi 
COPY TO c:\Dogi.xls TYPE xl5
SELECT Spr_Post
COPY TO c:\Spr_Post.xls TYPE xl5
loExcel=CREATEOBJECT("Excel.Application")
WITH loExcel
  NewBook=.Workbooks.Add.Name
  NewBook1=.Workbooks.Open("C:\dogi.xls").name
  .Sheets( 1 ).Copy (.Workbooks(NewBook).Sheets( 1 ))
  .Workbooks(NewBook1).Close
  NewBook1=.Workbooks.Open("c:\Spr_Post.xls").name
  .Sheets( 1 ).Copy (.Workbooks(NewBook).Sheets( 1 ))
  .Workbooks(NewBook1).Close
ENDWITH
DELETE File c:\Dogi.xls
DELETE FILE c:\Spr_Post.xls
loExcel.Visible=.t.
RELEASE loExcel
CLOSE DATABASES 

...
Рейтинг: 0 / 0
VFP - EXCEL
    #33405727
S866
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
для Maltsev Max

Конечно можно сделать и так как вы предлагаете. Потом вставить строки, сформировать шапку, нарисовать сетку, внести промежуточные итоги формулами EXcel. Сохранить в формате Excel 2000,XP,2003 .
Просто дело вкуса.

P.S. при количестве сторок в несколько тысяч так наверно даже быстрее будет.
...
Рейтинг: 0 / 0
VFP - EXCEL
    #33406567
Фотография ВладимирМ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
S866ВладимируМ

почемуто на VFP8 & win 98 & Excel 2002(XP) sp3
на строке :
Код: plaintext
comExcel.Sheets( 1 ).Cells( 1 , 1 ).PasteSpecial( 1 )
Выдает следующую ошибку

Хотя в winXP & VFP9 & EXCEL 2003 все работает безупречно.

Попробуй разбить команды на шаги и в отладчике посмотри, какая ссылка (на какой команде) теряется

Код: plaintext
1.
2.
3.
4.
5.
LOCAL loSheet
loSheet = comExcel.Sheets( 1 )
LOCAL loRange
loRange = m.loSheet.Cells( 1 , 1 )
m.loRange.PastSpecial( 1 )
...
Рейтинг: 0 / 0
VFP - EXCEL
    #33424522
S866
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
для Влидимира М

так при первом вызове строки
Код: plaintext
comExcel.Sheets( 1 ).Cells( 1 , 1 ).PasteSpecial( 1 )
и вылетает ошибка

я всетаки склоняюсь к мысли что у меня просто винда 98-я закривела - я ее уже несколько лет не переставлял токо чистил да подлечивал. Софта разного на ней перевернулось очень много.
...
Рейтинг: 0 / 0
18 сообщений из 18, страница 1 из 1
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / VFP - EXCEL
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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