![]() |
Microsoft Excel - общие вопросы
Вложений: 1
Суть проблемы в следующем – есть большая таблица, с кучей формул созданная в Excel 2003. В том же 2003ем все формулы нормально работают и отображаются, в 2007 на ячейках с формулами выскакивает ошибка в значении. Режим совместимости на 2007 включен, и настройки безопасности я до минимума выставлял – не помогает!!! Подскажите, пожалуйста, есть ли у кого мысли по данному вопросу? Что можно сделать, чтобы данные корректно отображались в Excel 2007???
|
Мало данных.
|
Что еще требуется? Формулы со внешними связями с другими таблицами, но необходимости в их обновлении нет.
|
Цитата:
Управление обновлением внешних ссылок (связей) |
Цитата:
|
Как один из вариантов:
Если в формулах в таблиц 2003 экселя меняются только № ячеек ( например А1, А2, А3 и тд) А само название формул остается, достаточно записать её отдельно. а при переносе в 2007 - записать заново а потом размножить (через правый нижний угол ячейки) по остальным строкам. Лучше заменить громадное множество одинаковых формул (расположенных построчно) одним или несколькими макросами с 1формулой на каждое действие, которая за 1 раз будет вычислять одну ячейку, организовать цикл вычисления по количеству строк в таблице. Объем файла при этом уменьшается в 2 - 3 раза, и нет таких вот зависимостей при переходе от 2003 к 2007. |
Microsoft Excel - общие вопросы
Добрый день. Есть следующая проблема: есть файл excel который находился в одной из папок на рабочем столе, после внесения изменений был сохранён и случайно вместо копировать вставить, был перетянут на рабочий стол и опять был изменён и сохранён. Вопрос, можно ли востановить первоначальное состояние до перемещения на раб. стол с первоначальными данными? Заранее спасибо.
|
Попытаться можно, но желательно на другом компьютере (подключить жесткий). Инструменты описаны в теме Восстановление данных c жёстких дисков (HDD) и флэш накопителей (USB)
|
vovikvovikb, подозреваю, что нет: если в случае копирования можно вернуться к исходному файлу в ФС, то при перемещении в пределах одного диска файл остается тем же, меняется только путь к нему в файловой таблице.
|
Польностью согласен с ShaddyR - шансов мало. Единственная программа, которая "видела" перезаписанные" файлы, хотя в других внимания не обращал, это TuneUp восстановитель случайно удаленных файлов. На форуме уже обсуждалось уничтожение информации при перезаписи одноименных файлов.
|
Microsoft Excel - общие вопросы
Мне необходимо защитить книгу Excel от переноса на другой компьютер. Кто-нибудь знает как это сделать? Спасибо.
|
А если просто пароль на чтение? Если и перенесут - открыть все-равно невозможно.
|
Я установил пароль на открытие книги, но не знаю где он хранится, если в самой книге, то будет требоваться и на другом компьютере, а если нет, то фигня всё это.
|
Пароль хранится в самом файле книги. Естественно его знание будет необходимо для открытия файла на любом компьютере.
|
Спасибо. Всё понял.
|
поиск значений в таблице excel
Вложений: 1
Всем доброго дня! В прикрепленном файле есть основная таблица из которой выбраны значения во вторую таблицу (нижнюю). Проблема в том что никак не могу въехать как выбрать значения из первого столбца основной таблицы при соответствующе выбранном столбце и значении второй таблицы: то есть выбираю Период, ему соответствует столбец и определенное значение по строке нижней таблицы, так вот нужно найти это значение в этом же столбце (Период) и вернуть значение Показателя в строку второй таблицы. В файле описано то же самое в примечании с указанием на конкретные ячейки. Пробовал всячески - не выходит, поэтому прикрепляю шаблон без формул. Заранее благодарен за ответ!
|
я изначально отказался от всевозможных вариантов с ЕСЛИ и хотел используя ВПР ГПР ИНДЕС СМЕЩ ПОИСКПОЗ и т.п. все это реализовать. уткнулся в проблему - не могу решить:
=ПОИСКПОЗ(ИНДЕКС(C16:F16;0;B15);D5:D9;0) - в ячейке b15 номер столба таблицы этим я могу узнать на какой строке нужная мне цифра, но не могу заставить узнать в нужном столбце (Период) - это главный вопрос, остальное можно как мне вдится прикрутить с помощью других функций. |
жалко только что эта защита ломается на раз (по крайней мере в предыдущих версиях)
Наверное все-таки лучше использовать шифрование файла. |
Да, эти офисовские пароли ерунда полная - защита от тех, кому лень зайти на секьюритилаб в раздел "программы". Самый лучший вариант: создать непрерывный RAR с экселевским файлом и каким-нибудь мусором (чем больше архив, тем дольше ломается пароль), да задать пароль не меньше 8 символов, такой, чтобы нельзя было подобрать по словарю. Скорость подбора примерно 2 пароля в секунду, посчитаем:
Восьмизначный пароль состоящий даже из одних цифр будет подбираться 10^8/2/60/60/24/365 ~ 1,5 года Восьмизначный пароль из английских букв в нижнем регистре 26^8/2/60/60/24/365 = 3310 лет Восьмизначный пароль из цифр и английских букв в обоих регистрах 62^8/2/60/60/24/365 ~ 3,5 млн. лет :) |
Цитата:
|
Вложений: 1
iam_alex, решение на VBA см. в приложенном файле. Выполнение макросов - разрешить в настройках безопасности. Вкратце: в модуль рабочего листа добавить следующий код:
Код:
Private Sub Worksheet_Change(ByVal Target As Range) |
Формула в Эксель
Добрый день. Есть документик в эксель, в нем некоторое множество листов. Нужно, чтобы на первом листе (допустим) в ячейке А1 отображалось содержимое ячейки А1 с одного из листов (второго, третьего и т.д.). Подразумевается что при наличии заполненной ячейки А1 на одном из листов, эту же ячейку на другом листе заполнять не будут!!!
Единственный вариант который пришел в голову это функция "или", но пока не получается ничего, подскажите кто что может?! PS: в идеале, после создания формулы, первый лист надо вообще запретить редактировать (но при этом данные при редактировании других листов все равно автоматом должны отображаться на первой странице) |
=Лист1!A1 Вместо Лист1 подставляете любой лист с ячейкой-источником данных
|
Цитата:
Я бы решил задачу так: В редакторе VBA в модуль рабочей книги записал следующую процедуру: Код:
Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range) P.S. Формул на первом листе не будет, только значения. |
Pliomera Огромное спасибо за помощь, данная штука работает.
можно попросить помочь чуток усовершенствовать? 1) Сделать так чтобы первый лист был заблокирован, но при этом на него могла производиться запись с остальных листов. На данный момент при блокировке листа при заполнении другого листа выскакивает ошибка о том что запись невозможна. может быть можно как то в код забить подстановку пароля? 2) Организовать какую нибудь проверочку на предмет того что определенная ячейка на первом листе заполнена, чтобы эксель выдавал сообщение и просил записать в другую ячейку? поясню, например я заполнил ячейку А1 на втором листе, она автоматом откопировалась на первый лист, после чего я заполняю ячейку А1 на третьем листе, а эксель говорит мне что ячейка уже занята и предлагает перенести на другую ячейку. что нибудь в этом роде. А то на данный момент он переносит в эту ячейку то что я набираю на следующем листе, с заменой того что там было... это так сказать защита от дурака. :) |
Цитата:
Код:
ActiveSheet.Unprotect Код:
ActiveSheet.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True |
спасибо местным гуру за огромную помощь. осталось только второй пунктик про проверку забацать и усе :)
|
Как-то так
Код:
Private Sub Worksheet_Change(ByVal Target As Range) |
Время: 08:06. |
Время: 08:06.
© OSzone.net 2001-