Я пытался найти решение этой проблемы, но ничего не вышло.
Вот проблема, с которой я столкнулся. Я хотел бы скопировать диапазон переменных данных с листа под названием («Суммы»), начиная с диапазона «C3», на другой лист с именем («Вставленные суммы») в диапазоне F2 столько раз, сколько столбцов, на листах «Суммы» начиная со следующего значения "Суммы в долларах США".
Я что-то кодировал, но это не работает... Я поместил счетчик в ячейку, чтобы подсчитать, сколько раз есть столбцы, начинающиеся со значения "Суммы в долларах США", чтобы выбрать значение, отображаемое в эту ячейку и повторите процесс вставки. Но я усложнил код, я думаю...
Вот мой код;
Dim cel2 As Range
Dim counter as Integer
With Sheets("Amounts")
Worksheets("Amounts").Activate
For Each cel2 In Range("A2", Range("A2").End(xlToRight))
If cel2.Value Like "Amount in USD*" Then
counter = counter + 1
Range("U4").Value = counter
End If
With Worksheets("Pasted Amounts").Activate
'~Here is bellow the column named " clients name" I want to paste in "Pasted amounts" sheet (by coping it in the sheet "Amounts"
worksheets("Amounts").Range("C3",range("C3").end(xldown).Select
'~ Paste the range copied in sheet " Pasted Amount" as many time the counter value is
.Copy Range("F2").Resize(.Count * counter)
End With
Next cel2
End With
End sub
Еще раз буду очень признателен за вашу помощь...
Мидо88
Вы можете заменить первое if на
WorksheetFunction.CountIf(Range("A2", Range("A2").End(xlToRight)), "Amount in USD*")
И вам не нужно активировать лист при использованииwith
, но вам нужно поставить.Range
, иначе он будет ссылаться на активный лист.Спасибо Кристофер за ваш ответ. Я попытался ввести код, который вы мне посоветовали, но он не сказал. Строка стала красной + я получил сообщение об ошибке компиляции, в котором говорится: «ожидается: =». Ты знаешь почему ?
Я пытаюсь понять последнюю часть. Куда вы копируете и с чего?
Что-нибудь как это?
Хорошо, я хочу скопировать с листа под названием («Суммы») на лист под названием «Вставленная сумма» в ячейке «F2». А на листе под названием «Суммы» есть столбцы, заголовки которых начинаются с «Суммы в долларах США» + другими словами. Дело в том, что я хочу, чтобы Excel автоматически подсчитывал, сколько раз суммы в долларах США появляются в заголовке каждого столбца, чтобы скопировать другой конкретный столбец с именем «Имена клиентов», существующий на этом листе, на другой лист с названием «Вставленные суммы» в диапазоне ( «Ф2»). Вот и все. Вам понятнее? Могу пересказать, если нужно :)
@Naresh Да, каким-то образом, однако я хочу копировать определенный столбец на втором листе столько раз, сколько есть заголовка столбца, начинающегося с «Суммы в долларах США» на первом листе.
Разве это не похоже на ваш последний вопрос? Просто адаптируйте этот код для работы над этим.