Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Microsoft Office и VBA программирование > Microsoft Office Excel
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 01.07.2010, 16:25   #1
Panorama
Новичок
Джуниор
 
Регистрация: 01.07.2010
Сообщений: 2
По умолчанию Excel произвольно меняет путь к ячейке другой книги

Возникла транная ситуация. Создана книга в Excel, в которой одни ячейки ссылаются на ячейки другой книги. Суть в том, что ранее все работало, и непонятно по каким причинам этот путь стал меняться с одного диска на другой. Точнее с сетевого на локальный. Меняется только одна буква.

Пример: путь должен быть таким:

='L:\Shared\Finance_South_HQ\Report s 2010\Файлы для презентации\[PL_Consol.xls]South'!F25

А он произвольно меняет его на локальный диск.

='C:\Shared\Finance_South_HQ\Report s 2010\Файлы для презентации\[PL_Consol.xls]South'!F25

Автозамену по поиску при этом выполнить не удается, он не находит слово C: , хотя ранее она работала.
Подскажите как это можно исравить и почему это произошло?
Panorama вне форума Ответить с цитированием
Старый 01.07.2010, 20:07   #2
EducatedFool
Программист VBA
СуперМодератор
 
Аватар для EducatedFool
 
Регистрация: 13.07.2008
Сообщений: 6,858
По умолчанию

Попробуйте такой макрос:
Код:
Sub ЗаменаФормул()
    txt1 = "C:\Shared\": txt2 = "L:\Shared\"
    On Error Resume Next
    calc = Application.Calculation: Dim sh As Worksheet
    Application.Calculation = xlCalculationManual
    For Each sh In ThisWorkbook.Worksheets
        sh.UsedRange.Replace txt1, txt2, xlPart
    Next sh
    Application.Calculation = calc
End Sub
EducatedFool вне форума Ответить с цитированием
Старый 02.07.2010, 11:06   #3
Panorama
Новичок
Джуниор
 
Регистрация: 01.07.2010
Сообщений: 2
По умолчанию

Цитата:
Сообщение от EducatedFool Посмотреть сообщение
Попробуйте такой макрос:
Код:
Sub ЗаменаФормул()
    txt1 = "C:\Shared\": txt2 = "L:\Shared\"
    On Error Resume Next
    calc = Application.Calculation: Dim sh As Worksheet
    Application.Calculation = xlCalculationManual
    For Each sh In ThisWorkbook.Worksheets
        sh.UsedRange.Replace txt1, txt2, xlPart
    Next sh
    Application.Calculation = calc
End Sub
Спасибо за ответ. Но к сожалению, макрос не работает. Я попробовала все таки сделать автозамену, он находит, но каждый раз появляется странное окошко.

Макрос на атозамену такой у меня:

ActiveCell.Replace What:="C:", Replacement:="L:", LookAt:=xlPart, _
SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _
ReplaceFormat:=False
Cells.Find(What:="C:", After:=ActiveCell, LookIn:=xlFormulas, LookAt:= _
xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, MatchCase:=False _
, SearchFormat:=False).Activate

И после его запуска сразу появляется окно:

Что за окно не могу понять
Изображения
Тип файла: jpg Буфер обмена01.jpg (156.0 Кб, 151 просмотров)
Panorama вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Word автоматически меняет буквы на другой язык Lvenok1987 Microsoft Office Word 2 19.05.2010 15:13
Большой выпадающий список с данными из другой закрытой книги Excel. agregator Microsoft Office Excel 72 17.02.2010 00:19
снятие пароля с книги/листа из другой книги? Bezdar Microsoft Office Excel 3 25.12.2008 11:59
Как запустить макрос при изменении другой книги Excel? Град Microsoft Office Excel 12 10.06.2008 10:01