Страницы: 1
RSS
Нужна формулу EXCEL которая даёт эффект копирования ? (D1)COPY(A1)
 
Привет !  
 
Продолжаю приспосабливать EXCEL для фундаментальных лабораторных экспериментов !  
 
Значит так, упрощённо это выглядит как то так : см приложенный скриншот !  
__________  
 
В ячейку D1 выводятся данные о "текущей температуре" ;  
 
В ячейку C1 "система замеров " даёт команду снять показания "цифрой 1" ;  
 
При получении команды формула в ячейке B1 делает точное разовое копирование данных из ячейки D1 в ячейку A1 и в дальнейшем Формула в ячейке B1 не реагирует на изменения в ячейке D1.  
 
Вопрос в том что я пока не нашёл формулу EXCEL которая даёт эффект копирования :  
 
(D1)COPY(A1)  
 
Скопировать РЕЗУЛЬТАТ а не формулу из ячейки D1 в ячейку A1. ?  
 
и не нашёл пока формулу которая делает ссылку на указанную ячейку :  
 
(D1)ССЫЛКА(A1)  
 
Сделать ссылку в ячейке A1 на ячейку D1  ( То есть банально написать в ячейку A1 строку =D1 ) . ?  
 
Желательно конечно именно использовать в ответе формулу именно EXCEL, а не медленный VBA ! Так как ячеек увы 20000 ! Но сервера мощные ! И можно все равно проверить и попробовать - Напишите хоть как то ... А ?  
 
PS : К-сожалению время реакции ничтожно мало ( несколько тысячных долей секунды ) что бы можно было успеть ввести поправку вручную !  
 
Кроме этого формула должна успешно копироваться из ячейки B1 в ячейки B17:B28000, так как эти 4 колонки идут насквозь на 28000 позиций !  
 
Сори за напрягный вопрос !
 
А можно сделать, чтобы каждая строка ( в отдельности ) при помощи "пользовательской функции" записывала в себя значение из другой ячейки, по команде "1" из " сигнальной " ячейки !  
 
Как выглядит подобная пользовательская функция на VBA !?  
 
Ответ на базе "пользовательской функции" наиболее желаем и удобен для меня в моих расчётах ( ибо можно подставлять куда угодно ! ... )  
 
А возможно это сделать создав новою заказную функцию EXCEL к примеру "MEMORY" ? На каком языке её нужно писать ? А на каком языке она будет быстрее работать ?  
_________________________________________  
 
Думаю это важно :  
 
Ответ в случае использования пользовательской функции может появляться в ячейке с самой функцией.  
 
Текущий номер строки написан рядом в соседней ячейке в колонке " F ".  
 
Все единички в колонке " C " появляются последовательно друг за другом по направлению вниз от С17 до С28000.  
__________________________________________  
 
Если это поможет то предполагаю возможен вариант 2 :  
 
Смотрите приложенный СКРИНШОТ  
________  
 
Значения в колонке С означают :  
 
0 - ответ в ячейке "A1"  -  "=D1 или 78  
1 - Вписать в ячейке " A1 " ответ как число из ячейки " D1 "  -   78  
2 - Фиксируется последнее число в ячейке " A1 " ( Получается как бы ячейка памяти ) и отсутствие в дальнейшем реакции на изменения в ячейки " D1 " пока " С1=2 " ...  
 
Формула либо в колонке " A " либо в колонке "B" :  
 
=ЕСЛИ(C1=0;0;ЕСЛИ(C1=1; "Вписать ответ как число из ячейки D1";C1=2 ; Фиксируется последнее число в ячейки A1 ( Получается как бы ячейка памяти ) и отсутствие в дальнейшем реакции на изменения в ячейки " D1 " пока С1=2))  
_____  
 
PS : Ответ на базе "пользовательской функции" наиболее желаем и удобен для меня в моих расчётах ( ибо можно подставлять куда угодно ! ... )  
 
Не, ну правда, Ужасно интересно ! и Полезно !
 
Ну хотя бы обычную "Пользовательскую функцию" копирования результата из одной ячейки в другую !  
 
К примеру :  
 
Если в ячейке A1 формула : =70+3  
 
,а в ячейке B1 записана формула :  
 
=COPY(A1;D1)  
 
То ответ в ячейке  D1 должен быть : 73  
 
PS : Внимание ответ в ячейке  D1 это не ссылка =A1 и не формула =70+3.  
 
Плиз ! Очень надо !  
 
Для Фундаментальных лабораторных научных Экспериментов !
 
{quote}{login=Tort7-3}{date=23.04.2008 11:49}{thema=}{post}Ну хотя бы обычную "Пользовательскую функцию" копирования результата из одной ячейки в другую !  
 
К примеру :  
 
Если в ячейке A1 формула : =70+3  
 
,а в ячейке B1 записана формула :  
 
=COPY(A1;D1)  
 
То ответ в ячейке  D1 должен быть : 73  
 
PS : Внимание ответ в ячейке  D1 это не ссылка =A1 и не формула =70+3.  
 
Плиз ! Очень надо !  
 
Для Фундаментальных лабораторных научных Экспериментов !{/post}{/quote}  
Ответ тот же, что и по вопросу о DELETE.  
Принципы реализации Excel таковы, что из контекста формул одной ячейки НЕВОЗМОЖНО менять значения другой. Или поверьте в этот факт, или обращайтесь к Биллу в Micrоsoft.  
Только по завершению работы формулы можно поменять значения других ячеек, если в их формулах указаны соответвующие ссылки.  Или можно отловить некоторые события, на которые и среагировать.  
Действительно, существовали другие электронные таблицы, в которых из одной формулы до завершения ее вычисления можно было поменять значения других ячеек, но Excel устроен иначе.
 
Нерешаемых задач нет !  
Есть просто задачи, которые требуют немного больше времени, чем Мы предполагали !  
 
PS: Думаю пользовательская команда на VBA вполне реальна в этом случае и уж 100% реальна на C++ !  
 
PS : За узлы ввода и вывода данных в EXCEL я не отвечаю - они написаны не мной ! Они работают на C++ и Ассемблер связывает их с экспериментальным "стендом" !  
 
Моя задача : Фундаментальный просчёт, большинства теоретически вероятных явлений, связанных с управляемым ростом температуры и замедление её роста на тестовом стенде в "изделии" методом введения реал-тайм поправок из EXCEL на "автомате" так как время эксперимента ничтожно мало !
 
Похоже, что один фундаментальный просчёт по устройству Excel-я уже случился :)  
Но если исходить из объективной реальности и отрабатывать события по завершению работы формул, то можно попробовать выжать минимальное время реакции на события изменения ячеек: средствами Windows API повысить приоритетность задачи Excel,  отлавливать события в модуле рабочего листа,а не рабочей книги, отключить перерисовку экрана и т.п. Или копать в направлении пользовательских функций XLL (C, С++), которые работают быстрее VBA-ных.
 
{quote}{login=}{date=23.04.2008 06:20}{thema=}{post}Нерешаемых задач нет !  
Есть просто задачи, которые требуют немного больше времени, чем Мы предполагали !  
 
PS: Думаю пользовательская команда на VBA вполне реальна в этом случае и уж 100% реальна на C++ !  
 
PS : За узлы ввода и вывода данных в EXCEL я не отвечаю - они написаны не мной ! Они работают на C++ и Ассемблер связывает их с экспериментальным "стендом" !  
 
Моя задача : Фундаментальный просчёт, большинства теоретически вероятных явлений, связанных с управляемым ростом температуры и замедление её роста на тестовом стенде в "изделии" методом введения реал-тайм поправок из EXCEL на "автомате" так как время эксперимента ничтожно мало !{/post}{/quote}Вы за задачу деньги получаете?    
А пытаетесь их заработать копипастом на форумах?  
Или этот пост для тупых местных, которые не смогли его осилить в теме "Нужна Функция "DELETE"?  
Я Вам предлагаю продолжать гордиться фундаментальностью своей задачи, а по вечерам посещать курсы программирования (хоть С++), чтобы использовать номальный инструмент для решения своих не "Нерешаемых задач", а не ёксель, который все-таки предназначен для домохозяеек (пусть и несколько сложен для них).
Страницы: 1
Читают тему
Наверх