Страницы: 1
RSS
поиск не видит символ ' (апостроф).
 
Добрый день. помогите пожалуйста. в ячейке прописан адрес на другую книгу- что-то вроде: ='I:\март\10\[расчет.xls]Лист1'!DK6 (он работает)
целенаправлено "равно=" было удалено, соответственно осталось:  
'I:\март\10\[расчет.xls]Лист1'!DK6 (так было нужно)
теперь с помощью найти/заменить пытаюсь равно вернуть.    
например:    
найти 'I:    
заменить на ='I:  
всё вроде бы просто. но символ ' когда он первый в строке-не находится. и соответственно сочетание 'I: найти не может.  
как можно добавить равно, чтобы активировать адрес?
 
лучше бы равно заменили на # (например) тогда и назад будет проще равно вернуть.
 
Апостроф в начале означает, что далее идет текст.
 
Т.е. при удалении "=" апостроф стал первым знаком в строке и Excel стал определять его не как символ, но как служебный знак.
 
="="&A1, гдк в А1 находится текст:  
I:\март\10\[расчет.xls]Лист1'!DK6 (так было нужно)
"..Сладку ягоду рвали вместе, горьку ягоду я одна."
 
Вопрос на самом деле занимательный.  
Крутил и так и эдак, не находится апостроф в начале строки, не стандартным поиском, не с помощью формул, ни через ВБА. Причем если стоит в середине строки то усе в порядке, можно найти и заменить.  
Вопрос все таки остается открытым, как же вычислить что в ячейке первым знаком идет апостроф (убрать его не проблема, суть именно в том чтобы понять есть он там или его нет, и при наличии заменить на нужный символ).  
Может кто из ЗУБРОВ и МЕГАМОЗГОВ подкинет направление куда копать ? ))
Редко но метко ...
 
Антон, vba чисто интуитивно : )  
 
Sub io()  
MsgBox ActiveCell.PrefixCharacter  
End Sub
Чебурашка стал символом олимпийских игр. А чего достиг ты?
Тишина - самый громкий звук


https://github.com/nervgh
 
http://www.planetaexcel.ru/forum.php?thread_id=21626
"..Сладку ягоду рвали вместе, горьку ягоду я одна."
 
Спасибо, nerv !  
 
ТО: AL - тогда ваш вопрос можно решить запустив данный макрос в модуле листа на котором нужно заменить апостроф на равно.  
 
Sub Test()  
   Dim r As Range  
   For Each r In UsedRange  
   If r.PrefixCharacter = "'" Then r.Formula = "=" & r.Value  
   Next r  
End Sub
Редко но метко ...
 
Владимир и вам спасибо.
Редко но метко ...
 
\еще варианты [на скорую руку] для работы с массивами
 
Sub io()  
   Dim x As Variant  
   x = ActiveCell.Value  
   MsgBox x = "" And Not IsEmpty(x)        ' 1  
   MsgBox x = "" And VarType(x) = vbString ' 2  
End Sub  
 
остальное сам дофантазируй)
Чебурашка стал символом олимпийских игр. А чего достиг ты?
Тишина - самый громкий звук


https://github.com/nervgh
 
p.s.: проверка только на апостроф, т.е. он должен быть в ячейке один
Чебурашка стал символом олимпийских игр. А чего достиг ты?
Тишина - самый громкий звук


https://github.com/nervgh
Страницы: 1
Читают тему
Наверх