Домашняя страница Undo Do New Save Карта сайта Обратная связь Поиск по форуму
МИР MS EXCEL - Гость.xls

Вход

Регистрация

Напомнить пароль

 

= Мир MS Excel/Автоматическая замена участка формулы - Мир MS Excel

Регистрация · Логин: · Пароль: · · Забыли пароль?
Страница 1 из 11
Модератор форума: _Boroda_, Pelena, Manyasha, SLAVICK 
Мир MS Excel » Вопросы и решения » Вопросы по Excel » Автоматическая замена участка формулы (Формулы/Formulas)
Автоматическая замена участка формулы
Lopotop Дата: Понедельник, 26.06.2017, 14:20 | Сообщение № 1
Группа: Пользователи
Ранг: Прохожий
Сообщений: 1
Репутация: 0 ±
Замечаний: 0% ±

Excel 2010
Есть макрос, требуется что бы, С поменялось на D. Не работает. Формула вида =Лист1!С5
[vba]
Код
Sub AVTOZAM_()
Dim c As Range
Dim s As String
For Each c In UsedRange.Cells.SpecialCells(xlCellTypeFormulas)
s = c.Formula
If Mid(s, Len(s) - 2, 1) = "C" Then Mid(s, Len(s) - 2, 1) = "E": c.Formula = s
Next
End Sub
[/vba]


Сообщение отредактировал Lopotop - Понедельник, 26.06.2017, 14:34
 
Ответить
СообщениеЕсть макрос, требуется что бы, С поменялось на D. Не работает. Формула вида =Лист1!С5
[vba]
Код
Sub AVTOZAM_()
Dim c As Range
Dim s As String
For Each c In UsedRange.Cells.SpecialCells(xlCellTypeFormulas)
s = c.Formula
If Mid(s, Len(s) - 2, 1) = "C" Then Mid(s, Len(s) - 2, 1) = "E": c.Formula = s
Next
End Sub
[/vba]

Автор - Lopotop
Дата добавления - 26.06.2017 в 14:20
китин Дата: Понедельник, 26.06.2017, 14:31 | Сообщение № 2
Группа: Друзья
Ранг: Участник клуба
Сообщений: 4214
Репутация: 659 ±
Замечаний: 0% ±

Excel 2007;Excel 2010
Lopotop, оформите код тэгами
Как оформлять сообщения?


Не судите строго:я пытаюсь научиться
ЯД 41001877306852/WM R249698041931; Z239672726538


Сообщение отредактировал китин - Понедельник, 26.06.2017, 14:33
 
Ответить
СообщениеLopotop, оформите код тэгами
Как оформлять сообщения?

Автор - китин
Дата добавления - 26.06.2017 в 14:31
китин Дата: Понедельник, 26.06.2017, 14:38 | Сообщение № 3
Группа: Друзья
Ранг: Участник клуба
Сообщений: 4214
Репутация: 659 ±
Замечаний: 0% ±

Excel 2007;Excel 2010
а просто при помощи Найти !С заменить на !D не прокатит?


Не судите строго:я пытаюсь научиться
ЯД 41001877306852/WM R249698041931; Z239672726538


Сообщение отредактировал китин - Понедельник, 26.06.2017, 14:39
 
Ответить
Сообщениеа просто при помощи Найти !С заменить на !D не прокатит?

Автор - китин
Дата добавления - 26.06.2017 в 14:38
buchlotnik Дата: Понедельник, 26.06.2017, 14:46 | Сообщение № 4
Группа: Друзья
Ранг: Участник клуба
Сообщений: 2775
Репутация: 791 ±
Замечаний: 0% ±

2010, 2013, 2016 RUS / ENG
как-то так видимо: [vba]
Код
Sub AVTOZAM_()
    Dim c As Range
    For Each c In ActiveSheet.UsedRange.Cells.SpecialCells(xlCellTypeFormulas)
        c.Formula = Replace(c.Formula, "C", "D")
    Next
End Sub
[/vba]


каждому For - Next!
платная помощь:
ЯД: 410012595572239
buchlotnik@mail.ru
 
Ответить
Сообщениекак-то так видимо: [vba]
Код
Sub AVTOZAM_()
    Dim c As Range
    For Each c In ActiveSheet.UsedRange.Cells.SpecialCells(xlCellTypeFormulas)
        c.Formula = Replace(c.Formula, "C", "D")
    Next
End Sub
[/vba]

Автор - buchlotnik
Дата добавления - 26.06.2017 в 14:46
_Boroda_ Дата: Понедельник, 26.06.2017, 15:00 | Сообщение № 5
Группа: Модераторы
Ранг: Местный житель
Сообщений: 10842
Репутация: 4479 ±
Замечаний: 0% ±

2003; 2007; 2010; 2013 RUS
Почти также
[vba]
Код
Sub AVTOZAM_()
    Dim c As Range
    For Each c In UsedRange.Cells.SpecialCells(xlCellTypeFormulas)
        c.Formula = Replace(c.Formula, "!C", "!E")
        c.Formula = Replace(c.Formula, "=C", "=E")
    Next
End Sub
[/vba]
Или так еще
[vba]
Код
Sub AVTOZAM1_()
    UsedRange.Cells.SpecialCells(xlCellTypeFormulas).Replace What:="c", Replacement:="e"
End Sub
[/vba]
Не, наверно лучше все-таки предусмотреть название листа с латинским "С"
[vba]
Код
Sub AVTOZAM1_()
    UsedRange.Cells.SpecialCells(xlCellTypeFormulas).Replace What:="!c", Replacement:="!e"
    UsedRange.Cells.SpecialCells(xlCellTypeFormulas).Replace What:="=c", Replacement:="=e"
End Sub
[/vba]


Скажи мне, кудесник, любимец ба’гов...
Платная помощь:
Boroda_Excel@mail.ru
Яндекс-деньги: 41001632713405 | Webmoney: R289877159277; Z102172301748; E177867141995
 
Ответить
СообщениеПочти также
[vba]
Код
Sub AVTOZAM_()
    Dim c As Range
    For Each c In UsedRange.Cells.SpecialCells(xlCellTypeFormulas)
        c.Formula = Replace(c.Formula, "!C", "!E")
        c.Formula = Replace(c.Formula, "=C", "=E")
    Next
End Sub
[/vba]
Или так еще
[vba]
Код
Sub AVTOZAM1_()
    UsedRange.Cells.SpecialCells(xlCellTypeFormulas).Replace What:="c", Replacement:="e"
End Sub
[/vba]
Не, наверно лучше все-таки предусмотреть название листа с латинским "С"
[vba]
Код
Sub AVTOZAM1_()
    UsedRange.Cells.SpecialCells(xlCellTypeFormulas).Replace What:="!c", Replacement:="!e"
    UsedRange.Cells.SpecialCells(xlCellTypeFormulas).Replace What:="=c", Replacement:="=e"
End Sub
[/vba]

Автор - _Boroda_
Дата добавления - 26.06.2017 в 15:00
Мир MS Excel » Вопросы и решения » Вопросы по Excel » Автоматическая замена участка формулы (Формулы/Formulas)
Страница 1 из 11
Поиск:

Яндекс цитирования
© 2010-2017 · Дизайн: MichaelCH · Хостинг от uCoz · При использовании материалов сайта, ссылка на www.excelworld.ru обязательна!