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

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в 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
    jtyler



    Newbie
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Yuk
     
    Спасибо!!
     
     
    А можно для удобства какимн-нибудь образом сгрупировать диаграмму, т.е. чтобы при её выделении куда бы не кликал мышкой диагрмма выделялась вся, а то если мышкойкликнуть на область например графика, то выделится только он ?

    Всего записей: 8 | Зарегистр. 27-07-2006 | Отправлено: 13:43 31-07-2006
    Yuk



    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    jtyler
    Можно. Используя 2-й способ из моего предыдущего поста, через класс, наследующий объект Chart. В нем прописываем реакцию на событие Select. Идея такая, что куда бы юзер ни кликнул при выделении графика, выделится весь график.
     
    Поподробнее:
     
    Создаем новый class module. Переименуем его в myChartClassModule.
    В его коде пишем
    Код:
    Public WithEvents myChartClass As Chart
     
    Private Sub myChartClass_Select(ByVal ElementID As Long, ByVal Arg1 As Long, ByVal Arg2 As Long)
        myChartClass.ChartArea.Select
    End Sub
     

     
    Теперь нужно связать непосредственно объект-график с нашим классом. В обычном модуле объявляем (вверху)
    Код:
    Dim ChartModule As New myChartClassModule

    Далее в любую функцию (можно отдельную) вставляем
    Код:
    Set ChartModule.myChartClass = ActiveChart
    Вместо ActiveChart можно использовать любой объект типа Chart.
     
    Все.

    Всего записей: 1182 | Зарегистр. 02-07-2001 | Отправлено: 17:34 31-07-2006 | Исправлено: Yuk, 17:35 31-07-2006
    sakhsnake



    Newbie
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Доброго всем времени суток.
    Подскажите пожалуйста как можно сделать вот такую весчь.
    Дано:
    Два массива.
    Первый - Dim(10000,2). Наименование, количество и точка.
    Второй - Dim(10000,2). Наименование (полный список), количество и точка.
    Один из массив содержит болше данных (т.е. полный список товара и его наличие)
    Количество записе в обоих массивах известно.
    Вопрос:
    Как получить массив вот такого вида:
    Dim(10000,3) где
    Dim(0,0) - Наименование.
    Dim(0,1) - наличие из полного списка
    Dim(0,2) - наличие на точке
    Dim(0,3) - точка.

    Всего записей: 21 | Зарегистр. 28-08-2005 | Отправлено: 04:26 01-08-2006
    dneprcomp



    Silver Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    sakhsnake
    Примерно так. Только разберись что из какого массива идет. А то ты массивы совершенно одинаково описал.
     
    Dim ar1(10000,2)
    Dim ar2(10000,2)
    Dim ar3(10000,3)
     
    Dim X as Integer
    Dim Y as Integer
     
    For X = 0 To 10000
       For Y = 0 To 3
          If Y < 3 then
             'Наименование, наличие из полного списка, наличие на точке  
             ar3(X,Y)=ar1(X,Y)  
          Else
             ar3(X,Y)=ar2(X,Y) точка
          End If
    Next X

    Всего записей: 3920 | Зарегистр. 31-03-2002 | Отправлено: 04:54 01-08-2006 | Исправлено: dneprcomp, 05:53 01-08-2006
    sakhsnake



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

    Цитата:
    ar3(X,Y)=ar1(X,Y) Наименование, наличие из полного списка, наличие на точке

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

    Цитата:
     
    Sub слияние(db_min, db_max, min, max)
    ' db_min - массив с мЕньшим количеством записей
    ' db_max - массив с бОльшим количеством записей
    ' min - количество записей в минимальном массиве
    ' max - количество записей в максимальном массиве  
    For i = 1 To min
        tovar_name = db_min(i, 0)
        tovar_kol = db_min(i, 1)
        tochka = db_min(i, 2)
        For count = 1 To max
        all_data_db(count, 0) = db_max(count, 0)
        all_data_db(count, 1) = db_max(count, 1)
        all_data_db(count, 2) = db_max(count, 2)
            If tovar_name = db_max(count, 0) Then
                If tochka = db_max(count, 2) Then
                    all_data_db(count, 0) = tovar_name
                    all_data_db(count, 1) = tovar_kol
                    all_data_db(count, 2) = tochka
                    all_data_db(count, 3) = db_min(i, 1)
                 End If
            End If
        Next count
    Next i
     

    Но уменя это работает неправильно.
    Может я что-то здесь перемудрил?

    Всего записей: 21 | Зарегистр. 28-08-2005 | Отправлено: 05:28 01-08-2006 | Исправлено: sakhsnake, 05:34 01-08-2006
    dneprcomp



    Silver Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    sakhsnake
    Я не утверждал, что массивы одинаковые. Я понятия не имею. Я отметил, что ты их описал одинаково.  
    Зачем происходит заполнение массива 2-а раза?

    Цитата:
        For count = 1 To max  
        all_data_db(count, 0) = db_max(count, 0)  
        all_data_db(count, 1) = db_max(count, 1)  
        all_data_db(count, 2) = db_max(count, 2)  
    и затем теже елементы перезаписываешь

    Цитата:
                If tochka = db_max(count, 2) Then  
                    all_data_db(count, 0) = tovar_name  
                    all_data_db(count, 1) = tovar_kol  
                    all_data_db(count, 2) = tochka  
                    all_data_db(count, 3) = db_min(i, 1)  

     

    Цитата:
    Цитата:ar3(X,Y)=ar1(X,Y) Наименование, наличие из полного списка, наличие на точке
     
    эта строка выдает ошибку
    А коментарии убирать пробовал?
    Мой пример(я кстати его подредактировал) расчитан на то, что массивы уже ОДИНАКОВО отсортированы и в них одинаковое количество елементов(так как ты описывал).
    Ты уверен что count и i начинаются с 1, а не с 0?
    Похоже, что происходит путаница с переменными. Дай нормальное описание, что хранится в массиве  db_max и чем значения tovar_kol в db_min логически отличаются от значения в массиве db_max.

    Всего записей: 3920 | Зарегистр. 31-03-2002 | Отправлено: 06:36 01-08-2006 | Исправлено: dneprcomp, 06:38 01-08-2006
    sakhsnake



    Newbie
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    dneprcomp
     
    С коментариями я понял, но ошибка была out of range, но не в этом дело.
    Да моя проперуха. Не так объяснил что мне необходимо сделать. А нужно вот что:
     
    В db_min содержится:
    db_min(0,0) - наименование товара
    db_min(0,1) - количество товара на точке
    db_min(0,2) - название точки
     
    В db_max содержится:
    db_max(0,0) - наименование товара
    db_max(0,1) - количество товара на складе
    db_max(0,2) - название точки
     
    min - количество записей в db_min
    max - количество записей в db_max
     
    В all_data_db необходимо получить:
    all_data_db(0,0) - наименование товара
    all_data_db(0,1) - количество товара на точке
    all_data_db(0,2) - количество товара на складе
    all_data_db(0,3) - название точки
     

    Всего записей: 21 | Зарегистр. 28-08-2005 | Отправлено: 07:17 01-08-2006
    dneprcomp



    Silver Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    sakhsnake
     
    for x=0 to max
       all_data_db(x,0) = db_max(x,0) 'наименование товара  
       all_data_db(x,2) = db_max(x,1) 'количество товара на складе  
       all_data_db(x,3) = db_max(x,2) 'название точки  
       for y=0 to min
          if db_max(x,0) = db_min(y,0) then
               if db_max(x,2) = db_min(y,2) then
                   all_data_db(x,1) = db_min(y,1) 'количество товара на точке  
                   exit for
               end if
          end if
       next y
    next x
     
    Добавлено:
    out of range был скорее всего от того, что размерность массивов не совпадала.

    Всего записей: 3920 | Зарегистр. 31-03-2002 | Отправлено: 09:46 01-08-2006 | Исправлено: dneprcomp, 09:55 01-08-2006
    sakhsnake



    Newbie
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    dneprcomp
     
    Огромное тебе спасибо. Но видимо проблема не в этом т.к. твой вариант отрабатывает точно так же как и мой. У меня есть еще подозрение что какая-то несостыковка идет в наименованиях. Т.к. (допустим: 100% ХИТ ОТ РУССКОГО РАДИО) если просто зделать поиск данного наименования то вылетает сообщение что данные не обнаружены, но обноружено что в запросе (поисковом) обнаружены символы форматирования. Можно ли с таким как-то боротся??? Всмысле как это вообще влияет на данные в массивах? Может я неправильно их объявляю? (делаю так: Dim all_data_db(10000, 3) As Variant)

    Всего записей: 21 | Зарегистр. 28-08-2005 | Отправлено: 10:37 01-08-2006
    dneprcomp



    Silver Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    sakhsnake
    Честно говоря, я не совсем понимаю что ты делаешь. И в чем. Какие поисковые запросы в Excel? Может ты в Access пишешь? Объяснил бы подробнее в чем проявляется ошибка. Код "поиска" показал бы ...
    PS. Если ты ищешь именно фразу "100% ХИТ ОТ РУССКОГО РАДИО", то % и может оказаться "символом форматирования"

    Всего записей: 3920 | Зарегистр. 31-03-2002 | Отправлено: 11:01 01-08-2006 | Исправлено: dneprcomp, 11:13 01-08-2006
    sakhsnake



    Newbie
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    dneprcomp
    Да нет пишу в Excel. Я говорил про обычный ексцеловский поиск. Вот он то и выдавал сообщение про которое я говорил в предыдущем посте. А возможно ли избавится от этого? Всмысле чтобы наименование воспринималось только как текст, а не какие-то там символы форматирования.
     
    P.S. Если интересно вот здесь положил файл 1.xls и модуль

    Всего записей: 21 | Зарегистр. 28-08-2005 | Отправлено: 11:53 01-08-2006
    alin



    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Помогите советом!
    Имеется форма, в которой, установив флаг (CheckBox), заносится необходимая формула в определённую ячейку. Как сделать, чтобы формула заносилась не в момент установки флага, а после нажатия на OK и после нажатия кнопки UndoButton данные на листе оставались без изменений?
    Возможно ли все нижеприведенное объединить в один код?...
    Хотелось бы облагородить страничку расчетов на работе...
    Заранее благодарен!
     
    Private Sub CommandButton1_Click()
    Menu.Show
    End Sub
     
    Private Sub OK_Click()
    If CheckBox1.Value = True Or CheckBox2.Value = True Or CheckBox3.Value = True _
        Then Unload Me
    If CheckBox1.Value And CheckBox2.Value And CheckBox3.Value _
        Or CheckBox1.Value = False And _
        CheckBox2.Value = False And CheckBox3.Value = False _
    Then MsgBox "Определитесь с операцией!"
    End Sub
     
    Private Sub UndoButton_Click()
    Unload Me
    End Sub
     
    Private Sub CheckBox1_Click()
    If CheckBox1.Value = True Then
        Range("I3").Formula = "=H3-C3"
        CheckBox2.Value = False
        CheckBox3.Value = False
        Range("I3").Select
        With Selection.Interior
            .ColorIndex = 4
            .Pattern = xlSolid
        End With
        End If
        If CheckBox1.Value = False Then
        Selection.ClearContents
        Range("I3").Select
        With Selection.Interior
            .ColorIndex = 0
            .Pattern = xlSolid
        End With
        End If
    End Sub.....
     

    Всего записей: 683 | Зарегистр. 05-08-2004 | Отправлено: 11:56 01-08-2006
    jtyler



    Newbie
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    for YUK
     
     
    Создаем новый class module. Переименуем его в myChartClassModule.
    В его коде пишем
    Код:
    Public WithEvents myChartClass As Chart
     
    Private Sub myChartClass_Select(ByVal ElementID As Long, ByVal Arg1 As Long, ByVal Arg2 As Long)
        myChartClass.ChartArea.Select
    End Sub
     

     
     
    _________________________
     
     
    А где потом исспользуется  myChartClass_Select  и что это за параметры (ByVal ElementID As Long, ByVal Arg1 As Long, ByVal Arg2 As Long) ?
     
     

    Всего записей: 8 | Зарегистр. 27-07-2006 | Отправлено: 16:58 01-08-2006
    Yuk



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

    Цитата:
    А где потом исспользуется  myChartClass_Select

    Это событие (event), запускается при выделении графика.

    Цитата:
    что это за параметры (ByVal ElementID As Long, ByVal Arg1 As Long, ByVal Arg2 As Long) ?

    Это параметры функции-обработчика события Select. ElementID передает в функцию, какой конкретно элемент графика выделен (оси, серии данных, заголовок и т.п.). Arg1 и Arg2 передают некие состояния этих элементов в зависимости от их типа.
     
    Вообще, читайте хелп VBA. Там все расписано довольно подробно.
     
     
     
    Добавлено:
    alin
    Какие проблемы? Просто перенеси конструкцию
    Код:
     If CheckBox1.Value = True Then
    ...
    End If
    If CheckBox1.Value = False Then
    ...
    End If
    из CheckBox1_Click в OK_Click.
    Кстати, лучше делать так:
    Код:
     If CheckBox1.Value Then
    ...
    Else
    ...
    End If

     

    Цитата:
    If CheckBox1.Value = True Or CheckBox2.Value = True Or CheckBox3.Value = True _
        Then Unload Me
    If CheckBox1.Value And CheckBox2.Value And CheckBox3.Value _
        Or CheckBox1.Value = False And _
        CheckBox2.Value = False And CheckBox3.Value = False _
    Then MsgBox "Определитесь с операцией!"
    Жуть! Определись со скобочками.
     
    If CheckBox1.Value = True - масло масляное.  
    If CheckBox1.Value или If Not CheckBox1.Value вполне достаточно.
     

    Цитата:
    Возможно ли все нижеприведенное объединить в один код?

    Что значит объединить? Разве это не один код?
     
     
    Добавлено:
    sakhsnake
    Похоже, у тебя в диалоге поиска добавлены какие-то опции форматирования. Например, искать только символы определенного шрифта. Надо все это дело почистить. У меня эксел английский, вот как выглядит отсутствие форматирования.
       
    B макросе это удобнее контролировать.
     
    Добавлено:
    Кстати,  

    Цитата:
    min - количество записей в db_min
    max - количество записей в db_max


    Цитата:
    for x=0 to max
    ...
    for y=0 to min

    Имхо тут на 1 элемент больше. Надо или max-1 и min-1. Или устанавливать Option Base 1 и начинать с 1. Делать во врех массивах одинаково.
     
    Еще вместо  Dim ar1(10000,2) я бы работал с динамическими массивами. Ничего сложного. Например,
    Код:
    Dim ar1() As Variant
    ...
    Redim a1(max,3)
     

     
     

    Всего записей: 1182 | Зарегистр. 02-07-2001 | Отправлено: 18:20 01-08-2006 | Исправлено: Yuk, 20:25 01-08-2006
    dneprcomp



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

    Цитата:
    Цитата:for x=0 to max  
    ...  
    for y=0 to min  
     
    Имхо тут на 1 элемент больше. Надо или max-1 и min-1
    sakhsnake указывал что массивы начинаются с 0 : all_data_db(0,0), db_max(0,0), db_min(0,0)
     
    sakhsnake
    У меня поиск тоже нормально работает. Но какое отношение поиск имеет к реализации алгоритма работы с массивами? При переносе в массив какие именно ошибки?
     
    Добавлено:
    Yuk

    Цитата:
    If CheckBox1.Value = True - масло масляное.  
    If CheckBox1.Value или If Not CheckBox1.Value вполне достаточно.
    В данной версии языка достаточно. А в следующей вполне может показываться другое свойство по дефолту. Что собственно и произошло в VB с контролом lable. Пришлось чистить весь код.

    Всего записей: 3920 | Зарегистр. 31-03-2002 | Отправлено: 20:41 01-08-2006 | Исправлено: dneprcomp, 20:51 01-08-2006
    Yuk



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

    Цитата:
    sakhsnake указывал что массивы начинаются с 0

    OK. Но так как max и min - количество записей, а не максимальный индекс, в цикле должно быть 0 to max-1.

    Цитата:
    Пришлось чистить весь код.

    Даже если CheckBox1.Value станет не булевая (в чем я очень сомневаюсь), то код придется чистить именно в первом случае с CheckBox1.Value = True. Второй вариант возьмет как булевые, так и целые значения. Или я что-то не так понял?
     

    Всего записей: 1182 | Зарегистр. 02-07-2001 | Отправлено: 21:07 01-08-2006
    dneprcomp



    Silver Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Yuk
    С min ты прав. Недоглядел я. В голове UBound крутился все время
    А вот с CheckBox... IMHO лучше явно определять. При явном в случае замены дефолтного значения вылезит error. А в использовании по дефолту придется разбираться где не идет. Но, впрочем, это в какой-то степени вопрос вкуса и привычек

    Всего записей: 3920 | Зарегистр. 31-03-2002 | Отправлено: 21:50 01-08-2006 | Исправлено: dneprcomp, 21:53 01-08-2006
    Yuk



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

    Цитата:
    При явном в случае замены дефолтного значения

    Стоп. Я кажется понял, где тут недопонимание.
    В конструкции CheckBox1.Value = True идет присваивание, и если это происходит впервые в коде, идет замена дефолтного значения. И здесь я с тобой абсолютно согласен, что оставлять это на произвол разработчиков не стоит.
    В случае же If CheckBox1.Value = True Then идет сравнение, и сравнивать булевую переменную с булевой константой, получая булевый же результат особого смысла не имеет. Разве что для некоторого удобства чтения, что действительно дело привычки.
     

    Всего записей: 1182 | Зарегистр. 02-07-2001 | Отправлено: 23:08 01-08-2006
    dneprcomp



    Silver Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Yuk
    Тогда на этом и сойдемся

    Всего записей: 3920 | Зарегистр. 31-03-2002 | Отправлено: 23:33 01-08-2006
    sakhsnake



    Newbie
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Yuk
    Насчет поиска я просто привел маленьки пример. Так сказать чтобы убедится что некоторые названия (в моём случае) представляются не просто как текст, а еще как-то. Как я понимаю и с подсказки dneprcomp впринципе так оно и получается. Про динамические массивы я уже подумывал, но это меня пока не беспокоит. Мне щас с другим разобратся надо.
     
    dneprcomp
    Поиск никаким образом не относится к созданию массивов. Но заковырка-то в том что db_min и db_max создаются нормально, а вот при их слиянии в all_data_db получается какая-то фигня. Я почему и полез на форум. Может я что-то не так делаю - оказалось что код который ты предложил отрабатывает точно также как и мой. Т.е. при слиянии в all_data_db неверные данные. Я и начал искать может что со входными данными не то?

    Всего записей: 21 | Зарегистр. 28-08-2005 | Отправлено: 03:43 02-08-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