Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Microsoft Office и VBA программирование > Microsoft Office Excel
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 27.10.2012, 15:25   #1
Вадим12091965
Форумчанин
 
Регистрация: 21.10.2012
Сообщений: 143
По умолчанию Как сократить код

Всем привет. Есть код:

Private Sub UserForm_Initialize()
ComboBox2.AddItem (Ëèñò7.Range("C3"))
ComboBox2.AddItem (Ëèñò7.Range("C4"))
ComboBox2.AddItem (Ëèñò7.Range("C5"))
ComboBox2.AddItem (Ëèñò7.Range("C6"))
ComboBox2.AddItem (Ëèñò7.Range("C7"))
ComboBox2.AddItem (Ëèñò7.Range("C8"))
ComboBox2.AddItem (Ëèñò7.Range("C9"))
ComboBox2.AddItem (Ëèñò7.Range("C10"))
ComboBox2.AddItem (Ëèñò7.Range("C11"))
ComboBox2.AddItem (Ëèñò7.Range("C12"))
ComboBox2.AddItem (Ëèñò7.Range("C13"))
ComboBox2.AddItem (Ëèñò7.Range("C14"))
ComboBox2.AddItem (Ëèñò7.Range("C15"))
ComboBox2.AddItem (Ëèñò7.Range("C16"))
ComboBox2.AddItem (Ëèñò7.Range("C17"))
ComboBox2.AddItem (Ëèñò7.Range("C18"))
ComboBox2.AddItem (Ëèñò7.Range("C19"))
ComboBox2.AddItem (Ëèñò7.Range("C20"))
ComboBox2.AddItem (Ëèñò7.Range("C21"))
ComboBox2.AddItem (Ëèñò7.Range("C22"))
ComboBox2.AddItem (Ëèñò7.Range("C23"))
ComboBox2.AddItem (Ëèñò7.Range("C24"))
ComboBox2.AddItem (Ëèñò7.Range("C25"))
ComboBox2.AddItem (Ëèñò7.Range("C26"))
ComboBox2.AddItem (Ëèñò7.Range("C27"))
ComboBox2.AddItem (Ëèñò7.Range("C28"))
ComboBox2.AddItem (Ëèñò7.Range("C29"))
ComboBox2.AddItem (Ëèñò7.Range("C30"))
ComboBox2.AddItem (Ëèñò7.Range("C31"))
ComboBox2.AddItem (Ëèñò7.Range("C32"))
ComboBox2.AddItem (Ëèñò7.Range("C33"))
ComboBox2.AddItem (Ëèñò7.Range("C34"))
ComboBox2.AddItem (Ëèñò7.Range("C35"))
ComboBox2.AddItem (Ëèñò7.Range("C36"))
ComboBox2.AddItem (Ëèñò7.Range("C37"))
ComboBox2.AddItem (Ëèñò7.Range("C38"))
ComboBox2.AddItem (Ëèñò7.Range("C39"))
ComboBox2.AddItem (Ëèñò7.Range("C40"))
ComboBox2.AddItem (Ëèñò7.Range("C41"))
ComboBox2.AddItem (Ëèñò7.Range("C42"))
ComboBox2.AddItem (Ëèñò7.Range("C43"))
ComboBox2.AddItem (Ëèñò7.Range("C44"))
ComboBox2.AddItem (Ëèñò7.Range("C45"))
ComboBox2.AddItem (Ëèñò7.Range("C46"))
ComboBox2.AddItem (Ëèñò7.Range("C47"))
ComboBox2.AddItem (Ëèñò7.Range("C48"))
ComboBox2.AddItem (Ëèñò7.Range("C49"))
ComboBox2.AddItem (Ëèñò7.Range("C50"))
ComboBox2.AddItem (Ëèñò7.Range("C51"))
ComboBox2.AddItem (Ëèñò7.Range("C52"))
ComboBox2.AddItem (Ëèñò7.Range("C53"))
ComboBox2.AddItem (Ëèñò7.Range("C54"))
ComboBox2.AddItem (Ëèñò7.Range("C55"))
ComboBox2.AddItem (Ëèñò7.Range("C56"))
ComboBox2.AddItem (Ëèñò7.Range("C57"))
ComboBox2.AddItem (Ëèñò7.Range("C58"))
ComboBox2.AddItem (Ëèñò7.Range("C59"))
ComboBox2.AddItem (Ëèñò7.Range("C60"))
ComboBox2.AddItem (Ëèñò7.Range("C61"))
ComboBox2.AddItem (Ëèñò7.Range("C62"))
ComboBox2.AddItem (Ëèñò7.Range("C63"))
ComboBox2.AddItem (Ëèñò7.Range("C64"))
ComboBox2.AddItem (Ëèñò7.Range("C65"))
ComboBox2.AddItem (Ëèñò7.Range("C66"))
ComboBox2.AddItem (Ëèñò7.Range("C67"))
ComboBox2.AddItem (Ëèñò7.Range("C68"))
ComboBox2.AddItem (Ëèñò7.Range("C69"))
ComboBox2.AddItem (Ëèñò7.Range("C70"))
ComboBox2.AddItem (Ëèñò7.Range("C71"))
ComboBox2.AddItem (Ëèñò7.Range("C72"))
ComboBox2.AddItem (Ëèñò7.Range("C73"))
ComboBox2.AddItem (Ëèñò7.Range("C74"))
ComboBox2.AddItem (Ëèñò7.Range("C75"))
ComboBox2.AddItem (Ëèñò7.Range("C76"))
ComboBox2.AddItem (Ëèñò7.Range("C77"))
ComboBox2.AddItem (Ëèñò7.Range("C78"))
ComboBox2.AddItem (Ëèñò7.Range("C79"))
ComboBox2.AddItem (Ëèñò7.Range("C80"))
ComboBox2.AddItem (Ëèñò7.Range("C81"))
ComboBox2.AddItem (Ëèñò7.Range("C82"))
ComboBox2.AddItem (Ëèñò7.Range("C83"))
ComboBox2.AddItem (Ëèñò7.Range("C84"))
ComboBox2.AddItem (Ëèñò7.Range("C85"))
ComboBox2.AddItem (Ëèñò7.Range("C86"))
ComboBox2.AddItem (Ëèñò7.Range("C87"))
ComboBox2.AddItem (Ëèñò7.Range("C88"))
ComboBox2.AddItem (Ëèñò7.Range("C89"))
ComboBox2.AddItem (Ëèñò7.Range("C90"))
ComboBox2.AddItem (Ëèñò7.Range("C91"))
ComboBox2.AddItem (Ëèñò7.Range("C92"))
ComboBox2.AddItem (Ëèñò7.Range("C93"))
ComboBox2.AddItem (Ëèñò7.Range("C94"))
ComboBox2.AddItem (Ëèñò7.Range("C95"))
ComboBox2.AddItem (Ëèñò7.Range("C96"))
ComboBox2.AddItem (Ëèñò7.Range("C97"))
ComboBox2.AddItem (Ëèñò7.Range("C98"))
ComboBox2.AddItem (Ëèñò7.Range("C99"))
ComboBox2.AddItem (Ëèñò7.Range("C100"))
End Sub

Можно ли сократить код? (крокозяблики - это Лист 7.)
Заранее благодарен.
Вадим12091965 вне форума Ответить с цитированием
Старый 27.10.2012, 15:58   #2
doober
Старожил
 
Аватар для doober
 
Регистрация: 02.05.2009
Сообщений: 3,907
По умолчанию

Цитата:
Можно ли сократить код?
Да
Код:
ComboBox2.RowSource = "Лист7!C3:C100"
Анализ,обработка данных Недорого
doober вне форума Ответить с цитированием
Старый 27.10.2012, 16:19   #3
kuklp
Участник клуба
 
Регистрация: 02.05.2010
Сообщений: 1,390
По умолчанию

Вариант без ссылки:
Код:
    ComboBox2.List = [Лист7!C3:C100].Value
mailto: kuklp60@gmail.com, ящики для благодарностей:
WM Z206653985942, R334086032478, U238399322728
kuklp вне форума Ответить с цитированием
Старый 28.10.2012, 09:14   #4
Вадим12091965
Форумчанин
 
Регистрация: 21.10.2012
Сообщений: 143
По умолчанию

Использую код
ComboBox2.RowSource = "Лист7!C3:C100"
при открытии формы получаю ошибку
Run-time error '380':
Could not set the Row Source property.
Invalid propery value.
Использую код
ComboBox2.List = [Лист7!C3:C100].Value
при открытии формы получаю ошибку
Run-time error '424':
Object reguired.
Что может быть не так?
Вадим12091965 вне форума Ответить с цитированием
Старый 28.10.2012, 09:18   #5
kuklp
Участник клуба
 
Регистрация: 02.05.2010
Сообщений: 1,390
По умолчанию

Выложите пример, чтоб нам не гадать. И будет Вам счастье.
mailto: kuklp60@gmail.com, ящики для благодарностей:
WM Z206653985942, R334086032478, U238399322728
kuklp вне форума Ответить с цитированием
Старый 28.10.2012, 10:17   #6
ikki_pf
Форумчанин
 
Регистрация: 25.02.2012
Сообщений: 166
По умолчанию

"Лист7" - это кодовое имя листа.
поставьте вместо него соответствующее ему обычное - то, которое стоит в скобках в окне Project Explorer.

либо это у вас вообще объявлена и используется переменная с таким именем - нам, извините, не видно.
в любом случае в предложенных вам способах требуется обычное имя листа.

Последний раз редактировалось ikki_pf; 28.10.2012 в 10:20.
ikki_pf вне форума Ответить с цитированием
Старый 28.10.2012, 11:04   #7
Вадим12091965
Форумчанин
 
Регистрация: 21.10.2012
Сообщений: 143
По умолчанию

Создал новую книгу для теста. Поставил на форму ComboBox, скопировал для него свой длинный код, работает. Заменил на предлагаемые - оба работают. Пороюсь где я накосячил. Всем большое спасибо.
Вадим12091965 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Помогить сократить T-SQL код Abbath1349 C/C++ Базы данных 0 21.05.2011 13:24
как можно сократить код sergio280888 БД в Delphi 0 17.04.2011 17:09
Сократить код shapiro Помощь студентам 0 14.04.2010 17:38
Как сократить код DLL ProgDel Общие вопросы Delphi 3 16.02.2010 21:12
Как можно сократить код jocry Общие вопросы Delphi 2 20.01.2009 08:35