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

Вход

Регистрация

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

 

= Мир MS Excel/Вставить текст только в выделенные ячейки. - Мир MS Excel

  • Страница 1 из 1
  • 1
Модератор форума: китин, _Boroda_  
Вставить текст только в выделенные ячейки.
Mark1976 Дата: Воскресенье, 16.02.2025, 08:22 | Сообщение № 1
Группа: Проверенные
Ранг: Ветеран
Сообщений: 785
Репутация: 3 ±
Замечаний: 0% ±

Excel 2010, 2013
Здравствуйте. Есть макрос. В нем прописано условие по вставке текста в определенные ячейки. Со временем это не стало устраивать, так текст надо копировать в разные ячейки. Можно сделать так, чтобы текст копировался только в те ячейки, которые предварительно выделю? (открываю файл, выделяю нужные ячейки, запускаю макрос, текст вставляется в нужные ячейки.
[vba]
Код
Sub Макрос10()
'
' Макрос10 Макрос
'

'
    Range("E3").Select
    ActiveCell.FormulaR1C1 = "Остаток на начало/Количество"
    Range("F3").Select
    ActiveCell.FormulaR1C1 = "Остаток на начало/Сумма"
    Range("G3").Select
    ActiveCell.FormulaR1C1 = "Приход/Количество"
    Range("H3").Select
    ActiveCell.FormulaR1C1 = "Приход/Сумма"
    Range("I3").Select
    ActiveCell.FormulaR1C1 = "Расход/Количество"
    Range("J3").Select
    ActiveCell.FormulaR1C1 = "Расход/Сумма"
    Range("K3").Select
    ActiveCell.FormulaR1C1 = "Остаток на конец/Количество"
    Range("L3").Select
    ActiveCell.FormulaR1C1 = "Остаток на конец/Сумма"
End Sub
[/vba]


Сообщение отредактировал Mark1976 - Воскресенье, 16.02.2025, 09:18
 
Ответить
СообщениеЗдравствуйте. Есть макрос. В нем прописано условие по вставке текста в определенные ячейки. Со временем это не стало устраивать, так текст надо копировать в разные ячейки. Можно сделать так, чтобы текст копировался только в те ячейки, которые предварительно выделю? (открываю файл, выделяю нужные ячейки, запускаю макрос, текст вставляется в нужные ячейки.
[vba]
Код
Sub Макрос10()
'
' Макрос10 Макрос
'

'
    Range("E3").Select
    ActiveCell.FormulaR1C1 = "Остаток на начало/Количество"
    Range("F3").Select
    ActiveCell.FormulaR1C1 = "Остаток на начало/Сумма"
    Range("G3").Select
    ActiveCell.FormulaR1C1 = "Приход/Количество"
    Range("H3").Select
    ActiveCell.FormulaR1C1 = "Приход/Сумма"
    Range("I3").Select
    ActiveCell.FormulaR1C1 = "Расход/Количество"
    Range("J3").Select
    ActiveCell.FormulaR1C1 = "Расход/Сумма"
    Range("K3").Select
    ActiveCell.FormulaR1C1 = "Остаток на конец/Количество"
    Range("L3").Select
    ActiveCell.FormulaR1C1 = "Остаток на конец/Сумма"
End Sub
[/vba]

Автор - Mark1976
Дата добавления - 16.02.2025 в 08:22
gling Дата: Воскресенье, 16.02.2025, 09:22 | Сообщение № 2
Группа: Друзья
Ранг: Участник клуба
Сообщений: 2631
Репутация: 724 ±
Замечаний: 0% ±

2010
Здравствуйте.
А как определить какой текст нужно вставить в какую ячейку? Если запустить [vba]
Код
Sub Макрос1()
    Selection = 2
End Sub
[/vba]то 2 вставится во все выделенные ячейки, а вам как надо?


ЯД-41001506838083
 
Ответить
СообщениеЗдравствуйте.
А как определить какой текст нужно вставить в какую ячейку? Если запустить [vba]
Код
Sub Макрос1()
    Selection = 2
End Sub
[/vba]то 2 вставится во все выделенные ячейки, а вам как надо?

Автор - gling
Дата добавления - 16.02.2025 в 09:22
Mark1976 Дата: Воскресенье, 16.02.2025, 09:34 | Сообщение № 3
Группа: Проверенные
Ранг: Ветеран
Сообщений: 785
Репутация: 3 ±
Замечаний: 0% ±

Excel 2010, 2013
gling, Здравствуйте. Всего 8 строк (8 наименований). Вставляться они должны друг за другом, как в макросе перечислены. Да, вставляем во все выделенные ячейки.
 
Ответить
Сообщениеgling, Здравствуйте. Всего 8 строк (8 наименований). Вставляться они должны друг за другом, как в макросе перечислены. Да, вставляем во все выделенные ячейки.

Автор - Mark1976
Дата добавления - 16.02.2025 в 09:34
gling Дата: Воскресенье, 16.02.2025, 09:42 | Сообщение № 4
Группа: Друзья
Ранг: Участник клуба
Сообщений: 2631
Репутация: 724 ±
Замечаний: 0% ±

2010
Вариант.
Активируете первую с лева ячейку в нужной строке и запускаете макрос.
[vba]
Код
Sub Шапка()
    ActiveCell.Resize(1, 8) = Array("Остаток на начало/Количество", "Остаток на начало/Сумма", "Приход/Количество", "Приход/Сумма", "Расход/Количество","Расход/Сумма", "Остаток на конец/Количество", "Остаток на конец/Сумма")
End Sub
[/vba]


ЯД-41001506838083

Сообщение отредактировал gling - Воскресенье, 16.02.2025, 11:38
 
Ответить
СообщениеВариант.
Активируете первую с лева ячейку в нужной строке и запускаете макрос.
[vba]
Код
Sub Шапка()
    ActiveCell.Resize(1, 8) = Array("Остаток на начало/Количество", "Остаток на начало/Сумма", "Приход/Количество", "Приход/Сумма", "Расход/Количество","Расход/Сумма", "Остаток на конец/Количество", "Остаток на конец/Сумма")
End Sub
[/vba]

Автор - gling
Дата добавления - 16.02.2025 в 09:42
Mark1976 Дата: Воскресенье, 16.02.2025, 09:59 | Сообщение № 5
Группа: Проверенные
Ранг: Ветеран
Сообщений: 785
Репутация: 3 ±
Замечаний: 0% ±

Excel 2010, 2013
gling, здравствуйте. Это то, что надо. Спасибо.
 
Ответить
Сообщениеgling, здравствуйте. Это то, что надо. Спасибо.

Автор - Mark1976
Дата добавления - 16.02.2025 в 09:59
_Boroda_ Дата: Понедельник, 17.02.2025, 10:11 | Сообщение № 6
Группа: Админы
Ранг: Местный житель
Сообщений: 16852
Репутация: 6570 ±
Замечаний: ±

2003; 2007; 2010; 2013 RUS
Не совсем ясно, чем начальный макрос не подошел. Тем более, что его можно вот так написать

И вот я, например, не всегда выделяю диапазон слева направо. Иногда справа налево мышой двигаю. В этом случае ActiveCell будет правая ячейка выделенного диапазона. Поэтому я бы написал
[vba]
Код
Selection(1).Resize(, 8) = Array("Остаток н...
[/vba]
Ну и так, на всякий случай, пробежаться по каждой ячейке из выделенных на листе (не обязательно связанный диапазон), можно примерно так
[vba]
Код
Dim cc As Range
    For Each cc In Selection
        i = i + 1
        cc = i
    Next cc
[/vba]
Вообще спосоюбов много, это просто один из


Скажи мне, кудесник, любимец ба’гов...
Платная помощь:
Boroda_Excel@mail.ru
Яндекс-деньги: 41001632713405 | Webmoney: R289877159277; Z102172301748; E177867141995
 
Ответить
СообщениеНе совсем ясно, чем начальный макрос не подошел. Тем более, что его можно вот так написать

И вот я, например, не всегда выделяю диапазон слева направо. Иногда справа налево мышой двигаю. В этом случае ActiveCell будет правая ячейка выделенного диапазона. Поэтому я бы написал
[vba]
Код
Selection(1).Resize(, 8) = Array("Остаток н...
[/vba]
Ну и так, на всякий случай, пробежаться по каждой ячейке из выделенных на листе (не обязательно связанный диапазон), можно примерно так
[vba]
Код
Dim cc As Range
    For Each cc In Selection
        i = i + 1
        cc = i
    Next cc
[/vba]
Вообще спосоюбов много, это просто один из

Автор - _Boroda_
Дата добавления - 17.02.2025 в 10:11
Mark1976 Дата: Понедельник, 24.02.2025, 21:14 | Сообщение № 7
Группа: Проверенные
Ранг: Ветеран
Сообщений: 785
Репутация: 3 ±
Замечаний: 0% ±

Excel 2010, 2013
_Boroda_, здравствуйте. Этот макрос вставляет текст в определенные ячейки. У меня нет привязки к ячейкам. Я могу встать в любую ячейку и текст должен вставится потом с активной ячейки. Или я не так вас понял.


Сообщение отредактировал Mark1976 - Понедельник, 24.02.2025, 21:17
 
Ответить
Сообщение_Boroda_, здравствуйте. Этот макрос вставляет текст в определенные ячейки. У меня нет привязки к ячейкам. Я могу встать в любую ячейку и текст должен вставится потом с активной ячейки. Или я не так вас понял.

Автор - Mark1976
Дата добавления - 24.02.2025 в 21:14
_Boroda_ Дата: Вторник, 25.02.2025, 10:03 | Сообщение № 8
Группа: Админы
Ранг: Местный житель
Сообщений: 16852
Репутация: 6570 ±
Замечаний: ±

2003; 2007; 2010; 2013 RUS
Все так. Я говорю про случай, когда выделена НЕ одна ячейка на листе. Вот тогда ActiveCell и Selection могут отличаться


Скажи мне, кудесник, любимец ба’гов...
Платная помощь:
Boroda_Excel@mail.ru
Яндекс-деньги: 41001632713405 | Webmoney: R289877159277; Z102172301748; E177867141995
 
Ответить
СообщениеВсе так. Я говорю про случай, когда выделена НЕ одна ячейка на листе. Вот тогда ActiveCell и Selection могут отличаться

Автор - _Boroda_
Дата добавления - 25.02.2025 в 10:03
  • Страница 1 из 1
  • 1
Поиск:

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