Имя: Пароль:
1C
 
Извините за баян. Активизировать ячейку в таблице НЕ в режиме ввода данных
Ø
0 Uho
 
21.11.06
13:50
Тема поднималась много раз... Так к чему пришли, напомните, плз, кроме как через WSH, можно как-нибудь?
1 Uho
 
21.11.06
14:28
ну хорошо, чтобы мне активизировать (показать на экране) 1000 строку - мне надо
sendKeys({DOWN 999}); делать или есть комбинации клавиш "побыстрее"???
2 КонецЦикла
 
21.11.06
14:31
Есть, Антошко - "PageDown"
:D
3 Uho
 
21.11.06
14:35
:)))
и как я узнаю сколько пейдждаунов надо, чтобы на 1000 строку опуститься?
:)))
4 Iova
 
21.11.06
14:43
Может сделать
-
ЗначениеТекущейЯчейки(<?>)
Синтаксис:
ЗначениеТекущейЯчейки(<Адрес>)
Назначение:
Возвращает вычисленное значение текущей ячейки таблицы (задается в конфигураторе: ''Свойства'' ячейки, ''Текст'', ''Расшифровка''), перенесенное в табличный документ.
Параметры:
<Адрес> - необязательный параметр. Идентификатор переменной, куда система возвратит адрес текущей ячейки в формате ''RnCn''.
-
после первого пэйджапа
5 Uho
 
21.11.06
14:51
(4) делал, не получилось, вроде ЗначениеТекущейЯчейки() работает до Показать() или я туплю?
6 Iova
 
21.11.06
14:57
(5) Фик знает, не пробовал. А таблица где объявлена?
7 Uho
 
21.11.06
14:58
таблица - переменная модуля
8 Iova
 
21.11.06
15:03
Счас попробовал, нормально работает после показа.
Перем Таб;
//******************************************************************************
// Тест()
//
// Параметры:
//
//
// Возвращаемое значение:
// Нет
//
// Описание:
// ТекстОписания
//
Процедура Тест()
  
  Перем Адрес;
  Таб.ЗначениеТекущейЯчейки(Адрес);
  Сообщить(Адрес);
  
КонецПроцедуры // Тест()
//*******************************************
Процедура Сформировать()
  
  Таб = СоздатьОбъект("Таблица");
  Таб.Показать("");
КонецПроцедуры
Тест() висит на кнопке
9 Uho
 
21.11.06
15:08
(8) ааа... ну тут дело в том, что у меня СендКейс не успевает отработать :((
10 Iova
 
21.11.06
15:27
(9) Оно не не успевает, оно отрабатывает в буфер.
11 Uho
 
21.11.06
15:39
(10) ну смысл то одинаков
12 Iova
 
21.11.06
15:41
Придумал так:
--
Перем Таб, WSH;
//******************************************************************************
// Тест()
//
// Параметры:
//
//
// Возвращаемое значение:
// Нет
//
// Описание:
// ТекстОписания
//
Процедура Тест()
  
  Перем Адрес;
  Таб.ЗначениеТекущейЯчейки(Адрес);
  Сообщить(Адрес);
  
КонецПроцедуры // Тест()
//*******************************************
Процедура Сформировать()
  
  Перем Адрес;
  Док = СоздатьОбъект("Документ.БюджетНаГод");
  Док.ВыбратьДокументы();
  Док.ПолучитьДокумент();
  Таб = СоздатьОбъект("Таблица");
  Сч = 0;
  Для Сч = 1 По 70 Цикл
    Обл = Таб.Область(Сч,1,Сч,1);
    Обл.Расшифровка(Док.ТекущийДокумент());
  КонецЦикла;
  Таб.ТолькоПросмотр(1);
  Таб.Показать("");
  WSH = СоздатьОбъект("WScript.Shell");
  WSH.SendKeys("{PGDN}");
  WSH.SendKeys("{ENTER}");
  
КонецПроцедуры
//******************************************************************************
// Предопределенная процедура.
//
Процедура ОбработкаЯчейкиТаблицы(Значение,ФСО,Таб,Адрес)
  
  ФСО = 0;
  Сообщить(Адрес);
  WSH.SendKeys("{PGDN}");
  
КонецПроцедуры // ОбработкаЯчейкиТаблицы()
--
Жду откат ;-)
13 Uho
 
21.11.06
15:47
прикольно, работать, наверное, будет, но это уже совсем изврат :))))
14 Iova
 
21.11.06
15:52
Работает.
Счас попробовал, обработкаЯчейки отрабатывает, если расшифровка не пустая, просто цифирь туда какую нить запихать и все, я док пихал т. к. думал, что она только с агрегатными типАми будет срабатывать.
15 Uho
 
22.11.06
11:55
(14) забыл сказать "спасибо", правда, мне все равно это не пригодилось, но может кому-нибудь пригодиться
  
спасибо!