#excel #vba
#excel #vba
Вопрос:
Привет, это вопрос vba. У меня есть определенный пользователем диапазон (Response1) ячеек, на который я затем ссылаюсь, используя для каждой ячейки в Response1 конструкцию цикла диапазона. С чем я борюсь, так это с тем, что при циклическом просмотре для каждой ячейки в Response1 я хочу итеративно изменять значение, смежное с текущей ячейкой, которая активна в цикле. Я дошел до использования Cell.Address() для определения адреса текущей активной ячейки (например, $ B $ 3 $), но я не могу понять, как затем использовать эту ячейку.Address(), чтобы фактически указать sheet.range (адрес ячейки). смещение (0,1). значение = желаемое значение. Любая помощь была бы очень признательна! Заранее всем спасибо! Будьте в безопасности и с наилучшими пожеланиями.
Вот пример моего кода:
For Each Cell In Response1
For cnter = 1 To FinalRow
If Application.WorksheetFunction.Trim(Cells(cnter, 3)) = Cell.Value Then
add = Cell.Address()
'Now put a myvalue in the cell adjacent to the current Cell being looked at:
'NEED HELP: Sheets("Quadrants").Range("add" variable here).Offset(0,1).value = myvalue
End If
Next cnter
Next Cell
Комментарии:
1. Не используйте адрес. Просто используйте
Cell.Offset(,1)
.2. Если я неправильно понял ваш вопрос, и вы хотите использовать адрес
Cell
, но ссылаетесь на другой лист, тогда простоSheets("Quadrants").Range(add).Offset(0,1)
— без кавычек.3. Привет, БигБен, большое спасибо за вашу помощь! Я чувствую себя таким новичком, это было намного проще, чем я думал. Я даже не думал просто попробовать, потому что думал, что это должно быть сложнее. Спасибо!
4. @BigBen Большое вам спасибо!