|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
Нет наработок или кода, если нужно готовое решение - создайте тему в разделе Фриланс и оплатите работу. Название темы включает слова - "Помогите", "Нужна помощь", "Срочно", "Пожалуйста". Название темы слишком короткое или не отражает сути вашего вопроса. Тема исчерпала себя, помните, один вопрос - одна тема Прочитайте правила и заново правильно создайте тему. |
|
Опции темы | Поиск в этой теме |
21.01.2009, 15:38 | #1 |
Пользователь
Регистрация: 09.09.2008
Сообщений: 43
|
Как присвоить имя столбцу в VBA?
Подскажите, можно ли столбцу в коде VBA присвоить имя, которое будет заменять ему его букуву при обращении?
Например, чтобы столбец "A" стал столбцом "January". Тогда Cells(1,"A") будет то же самое, что и Cells(1,"January") |
21.01.2009, 15:56 | #2 |
Балуюсь кодами
Участник клуба
Регистрация: 09.01.2009
Сообщений: 1,837
|
Если имя нужно только в коде, и при работе пользователя оно себя никак не проявляет, то обычным присваиванием переменной
Код:
Лучше день потерять — потом за пять минут долететь!©
Последний раз редактировалось viter.alex; 21.01.2009 в 16:01. |
21.01.2009, 16:14 | #3 |
Пользователь
Регистрация: 09.09.2008
Сообщений: 43
|
Да, я так пробовал, но дело в том, что само значение January я нахожу с помощью переменной, которая заключает имя в кавычки:
например: i=лист1.cells(1,1), откуда i="january". затем, когда я пишу лист2.cells(1,i) - возникает ошибка, т.к. i - содержит имя в кавычках. Как избежать этой ошибки? |
21.01.2009, 16:24 | #4 | |
Балуюсь кодами
Участник клуба
Регистрация: 09.01.2009
Сообщений: 1,837
|
Цитата:
Как объявлена i? Скорее всего никак. Ты ей присваиваешь строковое значение "january". И что ты хочешь от строки? Чтобы присвоить переменной, имя ячейки, то это имя нужно заключить в квадратные скобки Код:
Лучше день потерять — потом за пять минут долететь!©
|
|
21.01.2009, 16:42 | #5 |
Пользователь
Регистрация: 09.09.2008
Сообщений: 43
|
Я пишу так
Sub Macros() Dim i, January As Range Set January = Worksheets("Invoiced").Columns(7) Set i = Worksheets("Details").Cells(2, "L") 'в этой ячейке содержится значение месяца (January) Worksheets("Invoiced").Cells(10, i).Select 'выдает ошибку Type mismatch End Sub |
21.01.2009, 16:53 | #6 |
Балуюсь кодами
Участник клуба
Регистрация: 09.01.2009
Сообщений: 1,837
|
попробу так. Ты на место номера столбца ставишь ячейку, а нужно из этой ячейки взять номер ее столбца. Сейчас гуру подойдут, может еще толковее посоветуют
Код:
Лучше день потерять — потом за пять минут долететь!©
|
21.01.2009, 17:09 | #7 |
Пользователь
Регистрация: 09.09.2008
Сообщений: 43
|
Нет, Саш, если я возьму i.column, то у меня будет столбец L, а это мне не нужно, т.к. листы "Invoiced" и "Details" никак между собой не связаны.
Я делаю следующее: в ячейке Cells(2,"L") у меня содержится название определенного месяца. Это название я присваиваю переменной i (т.к. i у меня равен "january"). А на другом листе мне нужно найти столбец, который я определил, как january = Worksheets("Invoiced").Columns(7) Все бы работало, если бы i = january, а в моем случае i = "january". Короче кавычки все портят((( Как это исправить? Может есть другой способ?) |
21.01.2009, 18:12 | #8 | |
Новичок
СтарожилДжуниор
Регистрация: 05.02.2008
Сообщений: 9,487
|
Цитата:
Set January = Worksheets("Invoiced").Columns(7) Set i = Worksheets("Details").Cells(2, "L") 'в этой ячейке содержится значение месяца (January) Worksheets("Invoiced").Cells(10, 7).Select только для чего здесь обе строчки с Set - не понимаю.
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете
|
|
22.01.2009, 09:46 | #9 |
Пользователь
Регистрация: 09.09.2008
Сообщений: 43
|
Igor Go, это я сейчас знаю что у меня 7 столбец - это Январь. А таких столбцов у меня 12. И в зависимости от того какое значение содержит столбец L на листе Details, я и хочу, чтобы в будущем построенный мною цикл, автоматически находил именной столбец.
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Присвоить файлу имя в виде DateTime | Shouldercannon | Общие вопросы Delphi | 6 | 17.12.2008 12:55 |
Как присвоить ячейке имя? | Maxx | Microsoft Office Excel | 2 | 01.11.2008 11:30 |
Как присвоить имя автофигуре? | Град | Microsoft Office Excel | 6 | 17.10.2008 17:16 |
Как средствами VBA получить доменное имя пользователя? | Прохожий | Microsoft Office Excel | 3 | 04.10.2008 18:28 |
Вставка - Имя - Присвоить - ограничения? | Konstantin_Z | Microsoft Office Excel | 8 | 27.08.2008 16:37 |