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

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

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

ShIvADeSt (23-04-2007 01:59): http://forum.ru-board.com/topic.cgi?forum=33&topic=8273  Версия для печати • ПодписатьсяДобавить в закладки
На первую страницук этому сообщениюк последнему сообщению

   

Yuk



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Option Explicit
 
Private Sub ComboBox1_Change()
    Dim rng As Range
    Dim r As Range
    Dim strFilt As String
    Dim strFiltLen As Integer
    Dim arrFilt As Variant 'динамический массив
    Dim ColCnt As Integer
    Dim i As Integer, c As Integer
     
    ColCnt = ActiveSheet.UsedRange.Columns.Count
    Set rng = ActiveSheet.UsedRange
    strFilt = ComboBox1.Text
    strFiltLen = Len(strFilt)
    i = 0
    ReDim arrFilt(ColCnt - 1, i)
     
    For Each r In rng.Rows
        If strFilt = Left(r.Cells(1.1).Text, strFiltLen) Then
            ReDim Preserve arrFilt(ColCnt - 1, i)
            For c = 1 To ColCnt
                arrFilt(c - 1, i) = r.Cells(1, c).Value
            Next
            i = i + 1
        End If
    Next
    ComboBox1.Column() = arrFilt
End Sub
 
Private Sub TextBox1_Enter()
    TextBox1.BackColor = RGB(255, 255, 0)
End Sub
 
Private Sub TextBox1_Exit(ByVal Cancel As MSForms.ReturnBoolean)
    TextBox1.BackColor = RGB(255, 255, 255)
End Sub
 
 Private Sub UserForm_Initialize()
    Dim ColCnt As Integer
    Dim rng As Range
    Dim cw As String
    Dim c As Integer
     
    ColCnt = ActiveSheet.UsedRange.Columns.Count
    Set rng = ActiveSheet.UsedRange
    With ComboBox1
        .ColumnCount = ColCnt
        '.RowSource = rng.Address
        cw = ""
        For c = 1 To .ColumnCount
            cw = cw & rng.Columns(c).Width & ";"
        Next c
        .ColumnWidths = cw
        '.ListIndex = 0
    End With
    ComboBox1.Value = ""
End Sub

Всего записей: 1182 | Зарегистр. 02-07-2001 | Отправлено: 23:21 21-08-2006 | Исправлено: Yuk, 00:59 22-08-2006
   

На первую страницук этому сообщениюк последнему сообщению

Компьютерный форум 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