Методы автоматизации при работе в MS Excel. Синявская Г.А. - 55 стр.

UptoLike

Составители: 

55
Для того, чтобы скопированный код из макроса был безошибочным, надо
уточнить, что выбираемый диапазон ( Range) находится на активном ( выбран-
ном) листе (ActiveSheet).
Первая процедура после добавления изменений в 8-ю и 9-ю строки кода
принимает окончательный вид:
Private Sub Spisok_DblClick(ByVal Cancel As MSForms.ReturnBoolean)
Dim numidx As Long
numidx = Spisok.ListCount
For i = 0 To numidx - 1
Spisok.Selected(i) = False
Next i
Sheets("Товары").Select
ActiveSheet.Range("B3").Select
Selection.Sort Key1:=ActiveSheet.Range("B2"), Order1:=xlAscending, Header:=xlGuess, _
OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom
Sheets("Выбор").Select
End Sub
Здесь более крупным шрифтом отмечены изменения, внесенные нами
«вручную».
Для второй процедуры сначала запишем два макроса.
Перед записью первого макроса следует встать в любую ячейку листа
Выбор и выполнить такие действия:
4 щелкнуть по ярлыку листа Накладная;
4 щелкнуть по ячейке А16;
4 в меню Вставка выбрать опцию Строки;
4 выделить диапазон ячеек В15:L15;
4 протянуть за маркер заполнения выделенный диапазон на одну строку
вниз;
4 остановить запись макроса.
После того как все выбранные элементы из Списка будут переписаны в
накладную, надо вернуть сортировку товаров по полю кода товара, а после это-
го щелкнуть по ярлыку листа Накладная для просмотра результата. Эти дейст-
вия надо записать во второй макрос.
После создания вспомогательных макросов, переходим к созданию про-
цедуры.
Вторая процедура будет вызываться при нажатии кнопки « выбор», по-
этому в режиме редактирования надо дважды щелкнуть по этой кнопке, после
чего сформируется пустая процедура обработки события Click для кнопки вы-
бор. В нее надо скопировать оба макроса и добавить еще несколько строк про-
граммного кода в соответствии с описанием процедуры, представленным выше.
      Для того, чтобы скопированный код из макроса был безошибочным, надо
уточнить, что выбираемый диапазон ( Range) находится на активном ( выбран-
ном) листе (ActiveSheet).
      Первая процедура после добавления изменений в 8- ю и 9- ю строки кода
принимает окончательный вид:
    Private Sub Spisok_DblClick(ByVal Cancel As MSForms.ReturnBoolean)
    Dim numidx As Long
    numidx = Spisok.ListCount
    For i = 0 To numidx - 1
    Spisok.Selected(i) = False
    Next i
    Sheets("Товары").Select
    ActiveSheet.Range("B3").Select
    Selection.Sort Key1:=ActiveSheet. Range("B2"), Order1:=xlAscending, Header:=xlGuess, _
          OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom
    Sheets("Выбор").Select
    End Sub
     Здесь более крупным шрифтом отмечены изменения, внесенные нами
«вручную».

    Для второй процедуры сначала запишем два макроса.
    Перед записью первого макроса следует встать в любую ячейку листа
Выбор и выполнить такие действия:
    4 щелкнуть по ярлыку листа Накладная;
    4 щелкнуть по ячейке А16;
    4 в меню Вставка выбрать опцию Строки;
    4 выделить диапазон ячеек В15:L15;
    4 протянуть за маркер заполнения выделенный диапазон на одну строку
       вниз;
    4 остановить запись макроса.

      После того как все выбранные элементы из Списка будут переписаны в
накладную, надо вернуть сортировку товаров по полю кода товара, а после это-
го щелкнуть по ярлыку листа Накладная для просмотра результата. Эти дейст-
вия надо записать во второй макрос.
      После создания вспомогательных макросов, переходим к созданию про-
цедуры.
      Вторая процедура будет вызываться при нажатии кнопки « выбор», по-
этому в режиме редактирования надо дважды щелкнуть по этой кнопке, после
чего сформируется пустая процедура обработки события Click для кнопки вы-
бор. В нее надо скопировать оба макроса и добавить еще несколько строк про-
граммного кода в соответствии с описанием процедуры, представленным выше.




                                               55