Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2004.10.17;
Скачать: [xml.tar.bz2];

Вниз

Про Excel   Найти похожие ветки 

 
klerk   (2004-09-30 14:54) [0]

Вот пытаюсь загрузить имена всех открытых файлов Excel в Combobox.
ExcelApplication1.Connect;
try
excelapplication1.wo
if  ExcelApplication1.Workbooks.Count=0 then      
begin
Combobox1.items.add("Нет открытых.");
combobox1.ItemIndex:=0;
end
else
   for I := 1 to ExcelApplication1.Workbooks.Count do
  begin
    W := ExcelApplication1.Workbooks[I];
    S:=w.name;
         Combobox1.Items.Add(S);
  end;
finally
  ExcelApplication1.Disconnect;
  combobox1.ItemIndex:=0;

Так он находит один (первый) и всё.
Помогите.


 
klerk   (2004-09-30 14:56) [1]

excelapplication1.wo можно не смотреть - ошибся при копировании:)
Этой строки нет.


 
YurikGL ©   (2004-09-30 15:09) [2]

App : Variant;

try
app := CreateOleObject("Excel.Application");
 App.Visible := True;
if  app.Workbooks.Count=0 then
begin
Combobox1.items.add("Íåò îòêðûòûõ.");
combobox1.ItemIndex:=0;
end
else
  for I := 1 to app.Workbooks.Count do
   Combobox1.Items.Add(app.Workbooks[I].name);
finally
 App:=Unassigned;
end;
end;


 
klerk   (2004-09-30 15:22) [3]

>YurikGL ©
Сделал по-твоему.
Открыто два файла.
А он всё равно пишет в Combobox "Нет".


 
YurikGL ©   (2004-09-30 15:36) [4]


> klerk   (30.09.04 15:22) [3]

Дык это ж запускает новую копию екселя... В ней и нет документов...


 
YurikGL ©   (2004-09-30 15:40) [5]

ExcelApplication1.ConnectKind:=ckRunningInstance;
ExcelApplication1.Connect;
ExcelApplication1.Workbooks.Item[1].Name;
if  ExcelApplication1.Workbooks.Count=0 then
begin
Combobox1.items.add("Íåò îòêðûòûõ.");
combobox1.ItemIndex:=0;
end
else
for I := 1 to ExcelApplication1.Workbooks.Count do
   Combobox1.Items.Add(ExcelApplication1.Workbooks[I].name);
ExcelApplication1.Disconnect;


 
klerk   (2004-09-30 15:50) [6]

ExcelApplication1.ConnectKind:=ckRunningInstance;
ExcelApplication1.Connect;
//ExcelApplication1.Workbooks.Item[1].Name;

if  ExcelApplication1.Workbooks.Count=0 then

       Combobox1.items.add("нет.")

else
       for I := 1 to ExcelApplication1.Workbooks.Count do

               Combobox1.Items.Add(ExcelApplication1.Workbooks[I].name);

Всё равно заносит в combobox одно значение:(
Чего я не понимаю?


 
YurikGL ©   (2004-09-30 15:52) [7]


> klerk   (30.09.04 15:50) [6]

У меня два...На большем количестве не проверял... Может combobox как-то не так настроен?

Использую 2000-е компоненты


 
klerk   (2004-09-30 16:02) [8]

Я использую D5 и его стандартные компоненты.
Переделал всё на Memo.
Результат тот же:(
Добавляет одну строку (Книга1) и всё.


 
YurikGL ©   (2004-09-30 16:22) [9]


> klerk   (30.09.04 15:50) [6]

1) А сколько у тебя ExcelApplication1.Workbooks.Count?
2) Попробуй не две книги, а пять
3) Попробуй книги не с 1-цы а с 0 считать


 
klerk   (2004-09-30 16:29) [10]

1) Showmessage(inttostr(ExcelApplication1.Workbooks.Count)); = 1
2) Попробовал на 6 - то же.
3) Выдаёт : неверный индекс.

:(((((


 
YurikGL ©   (2004-09-30 16:48) [11]


> klerk   (30.09.04 16:29) [10]

Попробуй что-нибудь типа

try
i:=1;
while true do begin
Combobox1.Items.Add(ExcelApplication1.Workbooks[I].name);
inc(i);
              end;
except
end;

Когда дойдет до конца будет исключение...

Хотя извращение это



Страницы: 1 вся ветка

Форум: "Основная";
Текущий архив: 2004.10.17;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.46 MB
Время: 0.04 c
1-1096551956
debuger
2004-09-30 17:45
2004.10.17
Асм рулит?


1-1097043897
Solden
2004-10-06 10:24
2004.10.17
Как активизировать приложение?


1-1096541936
Мирон
2004-09-30 14:58
2004.10.17
Потоки мешаю друг другу


3-1095420833
Ceval
2004-09-17 15:33
2004.10.17
как организовать фильтрацию по полям Character и Numeric


6-1091863418
Ivolg
2004-08-07 11:23
2004.10.17
Про сокеты





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский