Часто приходилось менять "оптом" часть формул в ячейках книги, трудностей никогда не было. Но вот сегодня в одной книге (делал не сам, но править пришлось, увы, мне ) как всегда, выделяю диапазон ячеек в количестве 257460, затем даю изменить, что, на что, щелкаю кнопку "Заменить все" - и облом! Начинает лезть в другие книги и приходится жать кнопку отмена бессчетное количество раз (не жму, ессно, вырубаю через диспетчер). К примеру если в ячейке формула " "='W:\СТАТИСТИКА\2012\06\1-РД\АРХИВ\ВВОД с 1\[2Ц_1206.xls]АДМ'!$J$78 ", то начинает лезть в книгу 2Ц_1206.xls и бегать там ПО ВСЕМ ЯЧЕйКАМ !!! Пытался отключать все что только нашел по изменениям связей, и в настройках параметров, и в макросах, и в измененях связей - дохлый номер. Может, кто уже сталкивался с подобной проблемой?
Добрый всем день!
Часто приходилось менять "оптом" часть формул в ячейках книги, трудностей никогда не было. Но вот сегодня в одной книге (делал не сам, но править пришлось, увы, мне ) как всегда, выделяю диапазон ячеек в количестве 257460, затем даю изменить, что, на что, щелкаю кнопку "Заменить все" - и облом! Начинает лезть в другие книги и приходится жать кнопку отмена бессчетное количество раз (не жму, ессно, вырубаю через диспетчер). К примеру если в ячейке формула " "='W:\СТАТИСТИКА\2012\06\1-РД\АРХИВ\ВВОД с 1\[2Ц_1206.xls]АДМ'!$J$78 ", то начинает лезть в книгу 2Ц_1206.xls и бегать там ПО ВСЕМ ЯЧЕйКАМ !!! Пытался отключать все что только нашел по изменениям связей, и в настройках параметров, и в макросах, и в измененях связей - дохлый номер. Может, кто уже сталкивался с подобной проблемой?Nordic1962
Сообщение отредактировал Nordic1962 - Вторник, 04.09.2012, 15:59
Когда выскакивает такое окошко с выбором, это означает, что по указанному пути не существует такого файла или такого листа или такой ячейки (про ячейку например, в файле xls нет ячейки A100000). Хорошенько проверьте путь.
Когда выскакивает такое окошко с выбором, это означает, что по указанному пути не существует такого файла или такого листа или такой ячейки (про ячейку например, в файле xls нет ячейки A100000). Хорошенько проверьте путь._Boroda_
Естественно, такого пути не существует. Поэтому и пытаюсь изменить путь в формулах с диска W:\ на диск D:\. Но, похоже, проще присвоить диску другую букву, чем ковырять в формулах... (((
Естественно, такого пути не существует. Поэтому и пытаюсь изменить путь в формулах с диска W:\ на диск D:\. Но, похоже, проще присвоить диску другую букву, чем ковырять в формулах... (((Nordic1962
Public Sub www() Dim a, i&, j& a = [a1].CurrentRegion.FormulaR1C1 For i = 1 To UBound(a) For j = 1 To UBound(a, 2) If Left(a(i, j), 1) = "=" Then _ a(i, j) = Replace(a(i, j), "W:\", "D:\", , 1, vbTextCompare) Next Next ActiveWorkbook.UpdateLinks = xlUpdateLinksNever Application.DisplayAlerts = 0 Application.Calculation = xlCalculationManual [a1].CurrentRegion.FormulaR1C1 = a ThisWorkbook.Save ActiveWorkbook.UpdateLinks = xlUpdateLinksUserSetting' или xlUpdateLinksAlways Application.DisplayAlerts = -1 Application.Calculation = xlCalculationAutomatic End Sub
[/vba]
[vba]
Code
Public Sub www() Dim a, i&, j& a = [a1].CurrentRegion.FormulaR1C1 For i = 1 To UBound(a) For j = 1 To UBound(a, 2) If Left(a(i, j), 1) = "=" Then _ a(i, j) = Replace(a(i, j), "W:\", "D:\", , 1, vbTextCompare) Next Next ActiveWorkbook.UpdateLinks = xlUpdateLinksNever Application.DisplayAlerts = 0 Application.Calculation = xlCalculationManual [a1].CurrentRegion.FormulaR1C1 = a ThisWorkbook.Save ActiveWorkbook.UpdateLinks = xlUpdateLinksUserSetting' или xlUpdateLinksAlways Application.DisplayAlerts = -1 Application.Calculation = xlCalculationAutomatic End Sub
Естественно, такого пути не существует. Поэтому и пытаюсь изменить путь в формулах с диска W:\ на диск D:\. Но, похоже, проще присвоить диску другую букву, чем ковырять в формулах... (((
Нет, я писал про то, что не существует такого пути на диске D, а не на W.
Если пошагово - мы заменяем букву диска в первой ячейке, компутер пытается вычислить формулу и дать результат, не находит по указанному пути такого файла и предлагает нам выбрать файл из проводника. И так для каждой формулы.
Для проверки - откройте нужный Вам файл с диска D, в любом другом напишите = и ткните мышой в этот только что открытый файл, например, в ячейку А1. Потом закройте тот файл, который открывали и посмотрите на формулу-ссылку. Она примет вид ='D:\СТАТИСТИКА\2012\... А теперь сверьте полученное и ту формулу, которая получилась бы у Вас при замене в нужном файле (в котором Вы с самого начала хотели поменять ссылки) W на D. Уверяю Вас, что в промежутке от двоеточия до восклицательного знака эти две ссылки не совпадут. Проверим?
А прекрасный макрос, который Сергей написал в посте выше - он заменит Вам W на D, как Вы и хотели, но формулы считаться не будут.
Quote (Nordic1962)
Естественно, такого пути не существует. Поэтому и пытаюсь изменить путь в формулах с диска W:\ на диск D:\. Но, похоже, проще присвоить диску другую букву, чем ковырять в формулах... (((
Нет, я писал про то, что не существует такого пути на диске D, а не на W.
Если пошагово - мы заменяем букву диска в первой ячейке, компутер пытается вычислить формулу и дать результат, не находит по указанному пути такого файла и предлагает нам выбрать файл из проводника. И так для каждой формулы.
Для проверки - откройте нужный Вам файл с диска D, в любом другом напишите = и ткните мышой в этот только что открытый файл, например, в ячейку А1. Потом закройте тот файл, который открывали и посмотрите на формулу-ссылку. Она примет вид ='D:\СТАТИСТИКА\2012\... А теперь сверьте полученное и ту формулу, которая получилась бы у Вас при замене в нужном файле (в котором Вы с самого начала хотели поменять ссылки) W на D. Уверяю Вас, что в промежутке от двоеточия до восклицательного знака эти две ссылки не совпадут. Проверим?
А прекрасный макрос, который Сергей написал в посте выше - он заменит Вам W на D, как Вы и хотели, но формулы считаться не будут._Boroda_