Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Компьютеры » Прикладное программирование » Excel VBA

Модерирует : ShIvADeSt

ShIvADeSt (23-04-2007 01:59): http://forum.ru-board.com/topic.cgi?forum=33&topic=8273  Версия для печати • ПодписатьсяДобавить в закладки
Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102

   

RUSmafia



Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

 
 
Обсуждаем вопросы только по Excel VBA
(программирование макросов, скриптов, пользовательских функций и т.п.).
Приветствуются ссылки на ресурсы и справочную литературу по теме.
 
Вопросы по работе с MS Excel, не относящиеся к программированию, задаем в теме Excel FAQ

 
Обратите внимание, этот топик для помощи в изучении и использовании VBA. Посему запросы типа "Напишите мне такой-то макрос, я VBA не знаю и знать не хочу" не приветствуются.
Древняя мудрость: "Накорми голодного рыбой и он погибнет, научи его ловить рыбу и ты спасешь его."(R)
 
Информация общего характера:
  • Список соответствия имен функций в английской и русской версиях Excel
  • Описание Microsoft Excel File Format
     
    Рекомендации:
    Если у Вас есть проблема, не решаемая стандартными средствами Excel (об этом можно уточнить здесь) или требующая автоматизации, попробуйте для начала записать макрос самим Excel через меню Сервис (Tools) - Макрос (Macro) - Начать запись (Record New Macro). Подробнее здесь. В большинстве случаев получившийся код (Сервис-Макрос-Макросы-Изменить) Вас не удовлетворит, но подскажет, какие объекты-методы-свойства использовать.  
    Другой Ваш помощник - Просмотр объектов (Object Browser). Ну и встроення помощь (F1), естественно.
     
    Если Вы в тупике, покажите Ваш код (или часть кода) здесь.  Если вылазит ошибка, цитируйте ее полностью. Если код слишком большой, используйте тeг [more].
    Используйте отладчик - Breakpoints (F9), Watches (Shift-F9), Steps (F8 и др.) Сильно облегчает поиск ошибок.

     
    Рекомендуется к прочтению:
  • Первые шаги с Excel VBA
  • Excel VBA: Приёмы программирования
  • WinApi. Лекция из курса "Основы офисного программирования и язык VBA" (для продвинутых)
  • Daily Dose of Excel (eng.) - тематический блог: советы по работе с Excel и прочие материалы
  • Excel Macros & Excel VBA Code Tips, Tricks (eng.) - советы, трюки и уловки
  • Mr. Excel (forum) (eng.) - весьма оживленный форум по Excel&VBA.
     
    Родственные топики:
  • Вопросы по работе с MS Excel - Excel FAQ - часть 1, часть 2
  • Технические проблемы с MS Office 2003 или Office XP.
  • Word VBA все вопросы по Word VBA туда
  • Access все вопросы по программированию в Access туда
  • Книжульки по VBA - книги по программированию с использованием VBA
     
    Конкретные вопросы:
    Форма-заставка
    Как запустить макрос при изменении положения курсора или значения ячейки
  • Пример 1
  • Пример 2
  • Пример 3 (проверка области)
  • Пример 4
  • Пример 5
    Зацикливание в функции Change или SelectionChange
     
    Ранжирование без пробелов (макрос включает функции сортировки массива и удаления дубликатов, работает и в Excel 2007)
  • под Office 97
     
    Добавление в главное меню своего пункта, ассоциированного с макросом
    Создание ярлыка на рабочем столе
    Снятие защиты листа при забытом пароле
    Смена раскладки клавиатуры
    Скролл формы колесом прокрутки мыши
    Оптимизация кода по быстродействию использованием массивов

  • Всего записей: 556 | Зарегистр. 31-07-2002 | Отправлено: 21:40 14-10-2004 | Исправлено: lucky_Luk, 20:44 13-04-2007
    utmpatpc

    Newbie
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Yuk
    Здравствуйте!

    Цитата:
    Пробовал ли еще раз связаться с производителем и задать ему мои вопросы?  

    С производителем связывался, ответа нет, наверно он считает, что информации которую он мне дал достаточно.

    Цитата:
    Пробовал ли мой макрос, удаляюший лишние строки?

    Макрос удаляющий строки вставил в ЛИСТ, ничего не происходит, наверно из-за того в каком виде представляется время (см. скриншоты)

    Цитата:
    Опиши как можно подробнее работу с этой программой

    Запускаю экселевский шаблон, ввожу номер com-порта, к которому подключены весы, дальше запускается CPS Plus:
    http://www.mytempdir.com/908222
    Все, после этого идет ввод данных в Эксель.
    http://www.mytempdir.com/908249
    В CPS Plus удаляю первые 3 байта и последние 21, чтобы в Эксель вводился только вес.
    Заметь в каком ввиде представляется время, выхожу из этого положения, созданием отдельного столбца, копирую туда время и меняю формат:
    http://www.mytempdir.com/908282  
    В принципе все, код макроса я приводил выше, но вот выложил экселевкий шаблон на всякий случай:
    http://www.mytempdir.com/908291  
     
    Мой номер ICQ 177830930
    Заранее благодарен.

    Всего записей: 19 | Зарегистр. 28-08-2006 | Отправлено: 11:10 04-09-2006
    Yuk



    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Из Excel FAQ:
    sizop:

    Цитата:
    У меня на отдельном листе составлен бланк паспорта. В разделе РЭС, из раскрывающегося списка выбирается РЭС. В разделе подстанции, также из раскрывающиегося списка, в котором имеются ТОЛЬКО те подстанции которые находятся в выбранном РЭСе, выбирается подстанция. Далее соответственно также выбирается КЛ, из списка тех КЛ, которые присутствуют на подстанции.


    Цитата:
    надо определить кабельную линию конкртного РЭСа, конкретной подстанции, взять по нему данные (полностью эта строка) и определить эти данные в паспорт на отдельном листе.


    Цитата:
    Здесь выложил файл размер 50 Кбайт чтобы на пальцах не объяснять.

    Проблема зависимых выпадающих списков.
    Поскольку бланка паспорта у меня нет, пришлось сделать самому.
    Добавляешь новый лист, называешь Passport.  
    Начиная с A1, копируешь (включая пробелы):

    Код:
    ЭС
    Место установки
    Диспетчерское наименование
     
    Марка кабеля
    Сечение кабеля
    Длина кабеля, м
    Год ввода
    Срок эксплуатации
    Тип муфты
    наружной установки
    внутренней установки
    Длительно допустимая нагрузка, А
    Зима
    Лето
    max нагрузка при аварийном режиме, А
    Зима
    Лето
    Примечания

    Это заголовки полей.
     
    Далее идешь в VBA редактор (Alt-F11), в левой панели находишь лист "Passport", двойным кликом открываешь страницу кода. Туда вставляешь вот этот код.
     
    Теперь при активации этого листа в экселе заполняется выпадающий список ЭС. При выборе ЭС заполняется список в другой ячейке и т.д. Очищается кнопкой Delete.
     
    Форматировать ячейки можешь как угодно, но если будешь их двигать, надо будет аккуратненько модифицировать код.  
     
     
    Добавлено:
    utmpatpc
    Попробуй заменить строки

    Код:
    Sheets("Sheet1").Cells(RowPtr, 1).Formula = CPS$
    Sheets("Sheet1").Cells(RowPtr, 2).Formula = CPS2$
    Sheets("Sheet1").Cells(RowPtr, 3).Formula = CPS3$
    RowPtr = RowPtr + 1

    на

    Код:
    If Second(CPS3$) Mod 10 <> 0 Then
        Sheets("Sheet1").Cells(RowPtr, 1).Formula = CPS$
        Sheets("Sheet1").Cells(RowPtr, 2).Formula = CPS2$
        Sheets("Sheet1").Cells(RowPtr, 3).Formula = CPS3$
        Sheets("Sheet1").Cells(RowPtr, 3).NumberFormat = "hh:mm:ss.0"
        RowPtr = RowPtr + 1
    End If

    Если будет выдавать ошибку, пришли ее описание и строку, где код останавливается (Жми Debug). Есть у меня подозрение, но проверить не могу.

    Цитата:
    Заметь в каком ввиде представляется время, выхожу из этого положения, созданием отдельного столбца, копирую туда время и меняю формат

    А почему нельзя отформатировать непосредственно столбец С? В коде выше это учитывается.
     
     
    Добавлено:
    Кстати, может тебе убрать строки, когда весы выдают 0?

    Всего записей: 1182 | Зарегистр. 02-07-2001 | Отправлено: 22:47 04-09-2006 | Исправлено: Yuk, 10:03 05-09-2006
    tarrac



    Full Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    А не подскажете как можно узнать номер последней заполненной ячейке в столбце не перебирая весь столбец он начала и до попадания орпеделенного кличества пустых строк подрят ?

    Всего записей: 414 | Зарегистр. 29-09-2003 | Отправлено: 01:04 05-09-2006
    Yuk



    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    tarrac
    Определить число используемых рядов:
    nr = ActiveSheet.UsedRange.Rows.Count
     
    Прыгаем вверх до последней заполненной ячейки:
    lastrow = Cells(nr,col).End(xlUp).Row
    где col - номер нужного столбца

    Всего записей: 1182 | Зарегистр. 02-07-2001 | Отправлено: 04:35 05-09-2006
    sizop



    Advanced Member
    Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
    Yuk
    Ошибку выдает "Run-time error '9' Subscript out of range", после чего курсор выставляет на 11 строку.

    Код:
    With Sheets("&#202;&#203;-10")

    Всего записей: 1008 | Зарегистр. 02-08-2004 | Отправлено: 06:15 05-09-2006 | Исправлено: sizop, 06:15 05-09-2006
    Yuk



    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    sizop

    Цитата:
    Sheets("&#202;&#203;-10")

    Там должно быть "КЛ-10". Видимо при переносе из экселя в браузер ошибочка вышла. Это должно быть в нескольких местах, я подправлю в посте.

    Всего записей: 1182 | Зарегистр. 02-07-2001 | Отправлено: 06:30 05-09-2006
    sizop



    Advanced Member
    Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
    Yuk
    Сам подправил! Заработало. Буду пробовать разносить данные по нужным ячейкам.  Огромное тебе спасибо! Ты внес неоценимый вклад, в становление энергосистемы России.

    Всего записей: 1008 | Зарегистр. 02-08-2004 | Отправлено: 06:35 05-09-2006 | Исправлено: sizop, 13:34 05-09-2006
    utmpatpc

    Newbie
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Yuk
    Спасибо!
    Втавил код, он работает:
    http://www.mytempdir.com/910331
    Но есть проблемка, теперь удаляются строки с нулями, а мне нужна как раз обратная ситуация, когда строки с нулями остаются, а все остальное удаляется:
    http://www.mytempdir.com/910329
    Есть ли возможность переноса их на другой лист?

    Цитата:
    А почему нельзя отформатировать непосредственно столбец С? В коде выше это учитывается.

    Можно, но только если остановить передачу данных, преобразовать в текст и потом изменить формат представления времени

    Цитата:
    Кстати, может тебе убрать строки, когда весы выдают 0?

    Меня больше интересуют интервалы времени. Дело в том что по этим данным я буду строить кривые зависимости влажности от времени.
    Влажность расчитываю по массе от весов, а вот по времени застрял, и ни туду и ни сюда

    Всего записей: 19 | Зарегистр. 28-08-2006 | Отправлено: 10:21 05-09-2006
    sizop



    Advanced Member
    Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
    Yuk
    Однако проблема с переносом в другие ячейки.
    Вроде аккуратненько перенес, только вот первые два параметра выбираются нормально, а дисп. наименование (последний третий параметр) пустой список.
    Да кстати, вопрос, а если строки будут добавляться, редактировать надо будет?

    Всего записей: 1008 | Зарегистр. 02-08-2004 | Отправлено: 11:46 05-09-2006 | Исправлено: sizop, 13:33 05-09-2006
    Anton T

    Member
    Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
    Yuk
    Почему после установки "надстройки" из файла "Книга1.xla", панель "Моя панель" уже установлен над панелом "Форматировине" и нажимал кнопку, например, "Добавить запись" или "Найти записи" выдает ошибку: Object variable or With block variable not set (Error 91)
    Как исправить?
     
    Побровал без надстройки, как обычный(Книга1.xls) запускал, работает без проблем.
     
    Скачать сюда: _http://files.people.overclockers.ru/AntonT/_____1.xls и создай надстройки.

    Всего записей: 325 | Зарегистр. 12-04-2006 | Отправлено: 13:55 05-09-2006
    Lyubaha

    Newbie
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Добрый день!
    У меня вопрос.
    Есть столбец с числами, нужно произвести суммирование этих чисел по порядку таким образом: нужно суммировать сначала элементы от первого до десятого и записывать результат... потом элементы от второго до двенадцатого... потом от третьего до тринадцатого... потом от четвертого до четырнадцатого... и т.д.
    Напишите, пжста, пример функции или выражения для такого вычисления.
    Заранее спасибо!

    Всего записей: 2 | Зарегистр. 05-09-2006 | Отправлено: 14:30 05-09-2006
    Yuk



    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    sizop
    Видимо где-то пропустил. Проверь блок Case "$B$2". (Обрати внимание, что в Case должны быть $$). Еще предполагается, что 3 ячейки с параметрами располагаются одна под другой (B1,B2,B3). Попробуй заменить Target.Offset(-1,0) на Range("B1").  
    В другом блоке Case "$B$3$" - Target.Offset(-2,0) на Range("B1") и Target.Offset(-1,0) на Range("B2").

    Цитата:
    а если строки будут добавляться, редактировать надо будет?
    Нет. Заполнение списка ЭС идет каждый раз при активации листа Passport.
    Кстати, тестируй, все ли данные присутствуют в выпадающих списках. Правильно ли заполняются ячейки.
     
     
     
    Добавлено:
    Anton T
    Пока не смотрел.
    Пришли, в какой конкретно строке вылетает.
     
    Lyubaha
    Можно и без VBA сделать, через дополнительный столбец и функцию СУММЕСЛИ. Подробности позже (если такой вариант устроит).

    Всего записей: 1182 | Зарегистр. 02-07-2001 | Отправлено: 15:42 05-09-2006
    Troitsky



    Водник Водкин
    Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
    Lyubaha

    Цитата:
    нужно произвести суммирование этих чисел по порядку таким образом: нужно суммировать сначала элементы от первого до десятого и записывать результат... потом элементы от второго до двенадцатого... потом от третьего до тринадцатого... потом от четвертого до четырнадцатого... и т.д.

    Вероятно, с первого по одиннадцатый, со второго по двеннадцатый.., группами по одиннадцать элементов?
    Если так, тогда предположив, что элементы идут в столбце "А", в ячейке В11 можно записать формулу
    Код:
    =СУММ(A1:A11)
    и далее растянуть ее ниже по столбцу "В", тогда в ячейке В12 уже будет формула
    Код:
    =СУММ(A2:A12)
    и т.д.
     
    Все это без VBA

    ----------
    Мы в хорошем настроении гуляем по лесам.
    Кто обидеть нас захочет – сам получит по усам.
    Сам полу- получит по усам. Сам полу- получит по усам!

    Всего записей: 795 | Зарегистр. 13-12-2003 | Отправлено: 18:35 05-09-2006
    sizop



    Advanced Member
    Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
    Yuk
    Вот все понятно, все работает, огромное, человеческое
    Только вот объясни, нигде не могу найти, что за знак подчеркивания после Value?

    Код:
    If .Cells(i, 2).Value = Range("I2").Value _
                And .Cells(i, 3).Value = Range("I4").Value _

    Я понял так, циклом For перебираются значения, чтобы  .Cells(i, 2) совпадало со значением ячейки I2 ну и далее соответственно, а вот со знаком _ так я и не пойму.

    Всего записей: 1008 | Зарегистр. 02-08-2004 | Отправлено: 19:14 05-09-2006 | Исправлено: sizop, 19:16 05-09-2006
    Yuk



    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    utmpatpc
    Блин, ошибся. В первой строчке должно быть

    Код:
    If Second(CPS3$) Mod 10 = 0 Then


    Цитата:
    Можно, но только если остановить передачу данных, преобразовать в текст и потом изменить формат представления времени

    Не понял, преобразовать  в текст или из текста? Почему дата в предыдущем столбце работает, а время нет?
    Попробуй изменить :
    Sheets("Sheet1").Cells(RowPtr, 3).Formula = CDbl(CPS3$)
    Или попробуй CStr вместо CDbl.

    Цитата:
    Есть ли возможность переноса их на другой лист?

    Их - все данные? Без удалений?
    Наверное есть, можно попробовать. Сложность в том, что я не могу это тестировать.
    Придется довольно много модифицировать, поскольку название листа прописано явным образом в коде. Или при достижении определенного лимита можно сохранить файл, все удалить и начать сначала.

    Всего записей: 1182 | Зарегистр. 02-07-2001 | Отправлено: 19:18 05-09-2006
    Troitsky



    Водник Водкин
    Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
    sizop

    Цитата:
    что за знак подчеркивания после Value?

     
    Перенос строки, чтобы длинную строку разбить для наглядности на несколько коротких


    ----------
    Мы в хорошем настроении гуляем по лесам.
    Кто обидеть нас захочет – сам получит по усам.
    Сам полу- получит по усам. Сам полу- получит по усам!

    Всего записей: 795 | Зарегистр. 13-12-2003 | Отправлено: 19:23 05-09-2006
    Lyubaha

    Newbie
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

    Цитата:
    Troitsky
    Вероятно, с первого по одиннадцатый, со второго по двеннадцатый.., группами по одиннадцать элементов?  
    Если так, тогда предположив, что элементы идут в столбце "А", в ячейке В11 можно записать формулу
    Код:=СУММ(A1:A11)  
    и далее растянуть ее ниже по столбцу "В", тогда в ячейке В12 уже будет формула
    Код:=СУММ(A2:A12)  
    и т.д.  
    Все это без VBA

     
    Спасибо большое, я прекрасно понимаю, что можно и без VBA... Но суть проблемы в следующем: для ячеек
    H104=КОРЕНЬ(ДИСП(F4:F104))
    H105=КОРЕНЬ(ДИСП(F5:F105))
    H106=КОРЕНЬ(ДИСП(F6:F106))
    H107=КОРЕНЬ(ДИСП(F7:F107))
    H108=КОРЕНЬ(ДИСП(F8:F108))
    и т.д.
     
    Нужно написать макрос, чтобы это все считалось автоматом. Потому что интервал дисперсии часто приходится менять. Т. е. он может быть равен 100, 250, 255...
    И это не единственная задача для этого макроса...

    Всего записей: 2 | Зарегистр. 05-09-2006 | Отправлено: 07:27 06-09-2006
    utmpatpc

    Newbie
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Yuk
    УРА!!! Работает! Большое тебе человеческое спасибо!
    Красиво все делает и время корректно отображается и могу менять интервал от 5 секунд до минуты. Уже могу продолжать работу.
    Спасибо!
    Я понимаю, что это наглость, но для полного счастья осталось решить вопрос с строками-дубликатами, а то их уйма.
    И еще я хотел поинтересоваться, возможен ли вариант когда время представляется в секундах. Т.е. время отображается в секундах и при этом каждая последующая строка суммируется с предыдущей. Если у меня интервал 10 секунд, то в следующей строке должно быть 20, и т.д 30, 40, 50, 60, 70, 80.....
    Еще раз спасибо, Вы мне очень помогли.

    Всего записей: 19 | Зарегистр. 28-08-2006 | Отправлено: 12:23 06-09-2006
    Anton T

    Member
    Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
    Yuk

    Цитата:
    Пришли, в какой конкретно строке вылетает.  

    Если надстройки сделан, то нажимаем на кнопке Добавить запись или Найти записи выдает строку AddForm.show или FForm.show, сооветственно.

    Всего записей: 325 | Зарегистр. 12-04-2006 | Отправлено: 13:48 06-09-2006
    Yuk



    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Anton T
    Проблема вот в этой строке:
    Код:
    ComboBox1.Text = ThisWorkbook.ActiveSheet.Name

    В xla книге нет активного листа.  
    Откуда предполагается брать данные? Из файла надстройки или из файла пользователя?
    Либо прописывай имя листа, либо не используй ThisWorkbook.
     
     
     
    Добавлено:
    utmpatpc

    Цитата:
    для полного счастья осталось решить вопрос с строками-дубликатами, а то их уйма.
    Как определяются дупликаты? По какому столбцу (столбцам)? Только время?  
     
    Попробуй так:
    В самый верх модуля вставь
    Global lasttime As Variant
     
    Затем на старом месте

    Код:
    If Second(CPS3$) Mod 10 = 0 And CPS3$ <> lasttime Then
        Sheets("Sheet1").Cells(RowPtr, 1).Formula = CPS$
        Sheets("Sheet1").Cells(RowPtr, 2).Formula = CPS2$
        Sheets("Sheet1").Cells(RowPtr, 3).Formula = CPS3$
        Sheets("Sheet1").Cells(RowPtr, 3).NumberFormat = "hh:mm:ss.0"
        'эта строка для подсчета секунд в столбце F
        Sheets("Sheet1").Cells(RowPtr, 6).Value = _
            Sheets("Sheet1").Cells(RowPtr-1, 6).Value + 10
        RowPtr = RowPtr + 1
        lasttime = CPS3$
    End If

     
     
    Добавлено:
    Lyubaha
    Опишите поподробнее, что вы хотите. Если интервал будет меняться, как вы собираетесь его задавать. Вариант Троицкого представляется вполне разумным. Если все же нужна пользовательская функция, опишите предполагаемый синтаксис и параметры. Если макрос, что он должен делать.

    Всего записей: 1182 | Зарегистр. 02-07-2001 | Отправлено: 20:47 06-09-2006
       

    Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102

    Компьютерный форум Ru.Board » Компьютеры » Прикладное программирование » Excel VBA
    ShIvADeSt (23-04-2007 01:59): http://forum.ru-board.com/topic.cgi?forum=33&topic=8273


    Реклама на форуме Ru.Board.

    Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
    Modified by Ru.B0ard
    © Ru.B0ard 2000-2024

    BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

    Рейтинг.ru