Домашняя страница Undo Do Save Карта сайта Обратная связь Поиск по форуму
МИР MS EXCEL - Гость.xls

Вход

Регистрация

Напомнить пароль

 

= Мир MS Excel/Записи участника (krosav4ig) - Мир MS Excel

Старая форма входа
Мир MS Excel » Записи участника » krosav4ig [2347]
Результаты поиска
krosav4ig Дата: Вторник, 08.10.2019, 02:59 | Сообщение № 2181 | Тема: Поиск совпадающей последовательности ячеек
Группа: Друзья
Ранг: Старожил
Сообщений: 2347
Репутация: 989 ±
Замечаний: 0% ±

Excel 2007,2010,2013
мои 131 симолов, по сути, то же самое, что и у bmv98rus
Код
=ПОИСКПОЗ(B5;МУМНОЖ(--(Т(СМЕЩ(A$1;СТРОКА(A$4:A$1000)+СТОЛБЕЦ(СМЕЩ(A1;;;;B5));))=ТРАНСП(СМЕЩ(A$5;;;B5)));СТРОКА(СМЕЩ(A1;;;B5))^0);)+5


email:krosav4ig26@gmail.com WMR R207627035142 WMZ Z821145374535 ЯД 410012026478460
 
Ответить
Сообщениемои 131 симолов, по сути, то же самое, что и у bmv98rus
Код
=ПОИСКПОЗ(B5;МУМНОЖ(--(Т(СМЕЩ(A$1;СТРОКА(A$4:A$1000)+СТОЛБЕЦ(СМЕЩ(A1;;;;B5));))=ТРАНСП(СМЕЩ(A$5;;;B5)));СТРОКА(СМЕЩ(A1;;;B5))^0);)+5

Автор - krosav4ig
Дата добавления - 08.10.2019 в 02:59
krosav4ig Дата: Пятница, 11.10.2019, 19:00 | Сообщение № 2182 | Тема: Как перенести выбранные значения из listbox в таблицу?
Группа: Друзья
Ранг: Старожил
Сообщений: 2347
Репутация: 989 ±
Замечаний: 0% ±

Excel 2007,2010,2013
[vba]
Код
Private Sub CommandButton1_Click()
    Dim iPR As Long
    iPR = Cells(Rows.Count, 1).End(xlUp).Row + 1
    Cells(iPR, 2) = txt_¹
    Cells(iPR, 3) = txt_fio
    Cells(iPR, 4) = txt_email
    Cells(iPR, 5) = txt_tel
    With txt_kvalif
        For i = 0 To .ListCount - 1
            If .Selected(i) Then
                s = s & "," & .List(i)
            End If
        Next
    End With
    Cells(iPR, 6) = Mid(s, 2)
    Cells(iPR, 7) = txt_stat
    Cells(iPR, 8) = txt_cok
    Cells(iPR, 9) = txt_raspor
    Unload UserForm1
    ThisWorkbook.Save
End Sub

Private Sub CommandButton2_Click() 'êîä äëÿ "Ñîõðàíèòü îòðåäàêòèðîâàííûé äàííûå"
    'If Edit_Copy = "Edit" Then
    Cells(ActiveCell.Row, 2) = txt_¹
    Cells(ActiveCell.Row, 3) = txt_fio
    Cells(ActiveCell.Row, 4) = txt_email
    Cells(ActiveCell.Row, 5) = txt_tel
    With txt_kvalif
        For i = 0 To .ListCount - 1
            If .Selected(i) Then
                s = s & "," & .List(i)
                    
            End If
        Next
    End With
    Cells(ActiveCell.Row, 6) = Mid(s, 2)
    Cells(ActiveCell.Row, 7) = txt_stat
    Cells(ActiveCell.Row, 8) = txt_cok
    Cells(ActiveCell.Row, 9) = txt_raspor
                
End Sub
[/vba]

[vba]
Код
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
    Cancel = True
    UserForm1.txt_¹ = CStr(Cells(Selection.Rows.Row, 2).Value)
    UserForm1.txt_fio = CStr(Cells(Selection.Rows.Row, 3).Value)
    UserForm1.txt_email = CStr(Cells(Selection.Rows.Row, 4).Value)
    UserForm1.txt_tel = CStr(Cells(Selection.Rows.Row, 5).Value)
    Dim arr, i
    arr = Split(CStr(Cells(Selection.Rows.Row, 6).Value), ",")
    If IsArray(arr) Then
        With UserForm1.txt_kvalif
            For i = 0 To .ListCount - 1
                If UBound(Filter(arr, .List(i), , vbTextCompare)) > -1 Then
                    .Selected(i) = True
                End If
            Next
        End With
    End If
    UserForm1.txt_stat = CStr(Cells(Selection.Rows.Row, 7).Value)
    UserForm1.txt_cok = CStr(Cells(Selection.Rows.Row, 8).Value)
    UserForm1.txt_raspor = CStr(Cells(Selection.Rows.Row, 9).Value)
    UserForm1.Show vbModeless
End Sub
[/vba]
К сообщению приложен файл: 1481309.xlsm (31.3 Kb)


email:krosav4ig26@gmail.com WMR R207627035142 WMZ Z821145374535 ЯД 410012026478460
 
Ответить
Сообщение[vba]
Код
Private Sub CommandButton1_Click()
    Dim iPR As Long
    iPR = Cells(Rows.Count, 1).End(xlUp).Row + 1
    Cells(iPR, 2) = txt_¹
    Cells(iPR, 3) = txt_fio
    Cells(iPR, 4) = txt_email
    Cells(iPR, 5) = txt_tel
    With txt_kvalif
        For i = 0 To .ListCount - 1
            If .Selected(i) Then
                s = s & "," & .List(i)
            End If
        Next
    End With
    Cells(iPR, 6) = Mid(s, 2)
    Cells(iPR, 7) = txt_stat
    Cells(iPR, 8) = txt_cok
    Cells(iPR, 9) = txt_raspor
    Unload UserForm1
    ThisWorkbook.Save
End Sub

Private Sub CommandButton2_Click() 'êîä äëÿ "Ñîõðàíèòü îòðåäàêòèðîâàííûé äàííûå"
    'If Edit_Copy = "Edit" Then
    Cells(ActiveCell.Row, 2) = txt_¹
    Cells(ActiveCell.Row, 3) = txt_fio
    Cells(ActiveCell.Row, 4) = txt_email
    Cells(ActiveCell.Row, 5) = txt_tel
    With txt_kvalif
        For i = 0 To .ListCount - 1
            If .Selected(i) Then
                s = s & "," & .List(i)
                    
            End If
        Next
    End With
    Cells(ActiveCell.Row, 6) = Mid(s, 2)
    Cells(ActiveCell.Row, 7) = txt_stat
    Cells(ActiveCell.Row, 8) = txt_cok
    Cells(ActiveCell.Row, 9) = txt_raspor
                
End Sub
[/vba]

[vba]
Код
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
    Cancel = True
    UserForm1.txt_¹ = CStr(Cells(Selection.Rows.Row, 2).Value)
    UserForm1.txt_fio = CStr(Cells(Selection.Rows.Row, 3).Value)
    UserForm1.txt_email = CStr(Cells(Selection.Rows.Row, 4).Value)
    UserForm1.txt_tel = CStr(Cells(Selection.Rows.Row, 5).Value)
    Dim arr, i
    arr = Split(CStr(Cells(Selection.Rows.Row, 6).Value), ",")
    If IsArray(arr) Then
        With UserForm1.txt_kvalif
            For i = 0 To .ListCount - 1
                If UBound(Filter(arr, .List(i), , vbTextCompare)) > -1 Then
                    .Selected(i) = True
                End If
            Next
        End With
    End If
    UserForm1.txt_stat = CStr(Cells(Selection.Rows.Row, 7).Value)
    UserForm1.txt_cok = CStr(Cells(Selection.Rows.Row, 8).Value)
    UserForm1.txt_raspor = CStr(Cells(Selection.Rows.Row, 9).Value)
    UserForm1.Show vbModeless
End Sub
[/vba]

Автор - krosav4ig
Дата добавления - 11.10.2019 в 19:00
krosav4ig Дата: Воскресенье, 27.10.2019, 23:41 | Сообщение № 2183 | Тема: Сохранение книги с определенным именем
Группа: Друзья
Ранг: Старожил
Сообщений: 2347
Репутация: 989 ±
Замечаний: 0% ±

Excel 2007,2010,2013


email:krosav4ig26@gmail.com WMR R207627035142 WMZ Z821145374535 ЯД 410012026478460
 
Ответить
СообщениеЗдравствуйте
Format function
Workbook.SaveAs method
Workbook.SaveCopyAs method

Автор - krosav4ig
Дата добавления - 27.10.2019 в 23:41
krosav4ig Дата: Вторник, 29.10.2019, 12:43 | Сообщение № 2184 | Тема: Наполнение массива диапазонами в цикле
Группа: Друзья
Ранг: Старожил
Сообщений: 2347
Репутация: 989 ±
Замечаний: 0% ±

Excel 2007,2010,2013
Добры день
[vba]
Код
Sub Stat()

    Dim aBase
    Dim iCr As Integer
    
    iCr = 5

    ReDim aBase(1 To 5)

    For iCr = 1 To 5

        aBase(iCr) = Application.Transpose(ActiveSheet.Cells(1, iCr + 1).Resize(3, 1).Value)

    Next iCr
    
    ActiveSheet.Cells(5, 10).Resize(3, iCr - 1).Value = Application.Transpose(aBase)

End Sub
[/vba]
ограничение размерностей массива - 4^8 элементов


email:krosav4ig26@gmail.com WMR R207627035142 WMZ Z821145374535 ЯД 410012026478460
 
Ответить
СообщениеДобры день
[vba]
Код
Sub Stat()

    Dim aBase
    Dim iCr As Integer
    
    iCr = 5

    ReDim aBase(1 To 5)

    For iCr = 1 To 5

        aBase(iCr) = Application.Transpose(ActiveSheet.Cells(1, iCr + 1).Resize(3, 1).Value)

    Next iCr
    
    ActiveSheet.Cells(5, 10).Resize(3, iCr - 1).Value = Application.Transpose(aBase)

End Sub
[/vba]
ограничение размерностей массива - 4^8 элементов

Автор - krosav4ig
Дата добавления - 29.10.2019 в 12:43
krosav4ig Дата: Вторник, 29.10.2019, 15:59 | Сообщение № 2185 | Тема: Наполнение массива диапазонами в цикле
Группа: Друзья
Ранг: Старожил
Сообщений: 2347
Репутация: 989 ±
Замечаний: 0% ±

Excel 2007,2010,2013
Variant
массив aBase в цикле наполняется одномерными массивами, транспонирование в цикле нужно для того, чтобы, собственно, делать эти массивы одномерными
В итоге получаем одномерный массив массивов. Для того, чтобы сделать из него двумерный массив, нужно его транспонировать.

другой вариант использования этого приема

[vba]
Код
Sub Stat()

    Dim aBase
    Dim iCr As Integer
    
    iCr = 5

    ReDim aBase(1 To 3)

    For iCr = 1 To 3

        aBase(iCr) = ActiveSheet.Cells(iCr, 2).Resize(1, 5).Value

    Next iCr
    
    ActiveSheet.Cells(5, 10).Resize(iCr - 1, 5).Value = Application.Index(aBase, 0, 0)

End Sub
[/vba]


email:krosav4ig26@gmail.com WMR R207627035142 WMZ Z821145374535 ЯД 410012026478460
 
Ответить
СообщениеVariant
массив aBase в цикле наполняется одномерными массивами, транспонирование в цикле нужно для того, чтобы, собственно, делать эти массивы одномерными
В итоге получаем одномерный массив массивов. Для того, чтобы сделать из него двумерный массив, нужно его транспонировать.

другой вариант использования этого приема

[vba]
Код
Sub Stat()

    Dim aBase
    Dim iCr As Integer
    
    iCr = 5

    ReDim aBase(1 To 3)

    For iCr = 1 To 3

        aBase(iCr) = ActiveSheet.Cells(iCr, 2).Resize(1, 5).Value

    Next iCr
    
    ActiveSheet.Cells(5, 10).Resize(iCr - 1, 5).Value = Application.Index(aBase, 0, 0)

End Sub
[/vba]

Автор - krosav4ig
Дата добавления - 29.10.2019 в 15:59
krosav4ig Дата: Пятница, 01.11.2019, 16:15 | Сообщение № 2186 | Тема: Некорректная загрузка данных в комбобокс
Группа: Друзья
Ранг: Старожил
Сообщений: 2347
Репутация: 989 ±
Замечаний: 0% ±

Excel 2007,2010,2013
Здравствуйте
[vba]
Код
Private Sub UserForm_Initialize() 'Событие открытия формы FormLogbook
    
    Set GroupSheet = ThisWorkbook.Worksheets("group")            'Лист group
    Set DpdSheet = ThisWorkbook.Worksheets("dpd")                'Лист dpd
    Dim v As Variant, tabl_art As Range
    v = CStr(DpdSheet.Range("D4").Value): Set tabl_art = GroupSheet.Range("tabl_art")
    With FormLogbook.Cmb2
        .List = GetArr(GroupSheet.Range("tabl_art")) 'Загрузка данны, заполнение списка
        If tabl_art.Find(v, , xlValues, xlWhole, , , , , False) Is Nothing Then
            .AddItem v
            With tabl_art(tabl_art.Rows.Count + 1, 1)
                .NumberFormat = "@": .Value = v
            End With
        End If
        .Value = v                    'Ввод новых данных в поле комбобокса
    End With
End Sub
[/vba]
при Style=fmStyleDropDownList(0) свойство Value может принимать только значения, перечисленные в свойстве List


email:krosav4ig26@gmail.com WMR R207627035142 WMZ Z821145374535 ЯД 410012026478460

Сообщение отредактировал krosav4ig - Пятница, 01.11.2019, 16:16
 
Ответить
СообщениеЗдравствуйте
[vba]
Код
Private Sub UserForm_Initialize() 'Событие открытия формы FormLogbook
    
    Set GroupSheet = ThisWorkbook.Worksheets("group")            'Лист group
    Set DpdSheet = ThisWorkbook.Worksheets("dpd")                'Лист dpd
    Dim v As Variant, tabl_art As Range
    v = CStr(DpdSheet.Range("D4").Value): Set tabl_art = GroupSheet.Range("tabl_art")
    With FormLogbook.Cmb2
        .List = GetArr(GroupSheet.Range("tabl_art")) 'Загрузка данны, заполнение списка
        If tabl_art.Find(v, , xlValues, xlWhole, , , , , False) Is Nothing Then
            .AddItem v
            With tabl_art(tabl_art.Rows.Count + 1, 1)
                .NumberFormat = "@": .Value = v
            End With
        End If
        .Value = v                    'Ввод новых данных в поле комбобокса
    End With
End Sub
[/vba]
при Style=fmStyleDropDownList(0) свойство Value может принимать только значения, перечисленные в свойстве List

Автор - krosav4ig
Дата добавления - 01.11.2019 в 16:15
krosav4ig Дата: Вторник, 05.11.2019, 19:21 | Сообщение № 2187 | Тема: Посчитать сумму в диапазоне дат
Группа: Друзья
Ранг: Старожил
Сообщений: 2347
Репутация: 989 ±
Замечаний: 0% ±

Excel 2007,2010,2013
Здравствуйте
Код
=СУММПРОИЗВ((ДАТАМЕС(+B1:J1;6)>=СЕГОДНЯ())*B2:J2)


email:krosav4ig26@gmail.com WMR R207627035142 WMZ Z821145374535 ЯД 410012026478460
 
Ответить
СообщениеЗдравствуйте
Код
=СУММПРОИЗВ((ДАТАМЕС(+B1:J1;6)>=СЕГОДНЯ())*B2:J2)

Автор - krosav4ig
Дата добавления - 05.11.2019 в 19:21
krosav4ig Дата: Воскресенье, 10.11.2019, 07:04 | Сообщение № 2188 | Тема: Функция выделения цветом
Группа: Друзья
Ранг: Старожил
Сообщений: 2347
Репутация: 989 ±
Замечаний: 0% ±

Excel 2007,2010,2013
Все операторы действия (заливка, закраска, вставка встрок, удаление ячеек и т.п.) в функции рабочего листа ИГНОРИРУЮТСЯ
Ну зачем же так категорично? У нас есть же Evaluate
[vba]
Код
Function ЦВЕТ$(ByRef r As Range, b$, iColor%)
    Dim s$, s1$
    On Error Resume Next
    If b = "КР" Then iColor = 3 Else iColor = xlNone
    s = r.Address(, , Application.ReferenceStyle, 1)
    s1 = Application.Caller.Address(, , Application.ReferenceStyle, 1)
    Evaluate "Module1.Colorize(" & s & "," & s1 & "," & iColor & ")"
    DoEvents
    ЦВЕТ = IIf(r.Interior.ColorIndex = iColor, "ГОТОВО!", "ОШИБКА!")
End Function
Function Colorize(ByRef r As Range, ByRef r1 As Range, iColor%)
    On Error Resume Next
    If Application.Caller.Address <> r1.Address Then
        r.Interior.ColorIndex = iColor
    End If
End Function
[/vba]
К сообщению приложен файл: 3680272.xlsm (15.6 Kb)


email:krosav4ig26@gmail.com WMR R207627035142 WMZ Z821145374535 ЯД 410012026478460

Сообщение отредактировал krosav4ig - Воскресенье, 10.11.2019, 07:06
 
Ответить
Сообщение
Все операторы действия (заливка, закраска, вставка встрок, удаление ячеек и т.п.) в функции рабочего листа ИГНОРИРУЮТСЯ
Ну зачем же так категорично? У нас есть же Evaluate
[vba]
Код
Function ЦВЕТ$(ByRef r As Range, b$, iColor%)
    Dim s$, s1$
    On Error Resume Next
    If b = "КР" Then iColor = 3 Else iColor = xlNone
    s = r.Address(, , Application.ReferenceStyle, 1)
    s1 = Application.Caller.Address(, , Application.ReferenceStyle, 1)
    Evaluate "Module1.Colorize(" & s & "," & s1 & "," & iColor & ")"
    DoEvents
    ЦВЕТ = IIf(r.Interior.ColorIndex = iColor, "ГОТОВО!", "ОШИБКА!")
End Function
Function Colorize(ByRef r As Range, ByRef r1 As Range, iColor%)
    On Error Resume Next
    If Application.Caller.Address <> r1.Address Then
        r.Interior.ColorIndex = iColor
    End If
End Function
[/vba]

Автор - krosav4ig
Дата добавления - 10.11.2019 в 07:04
krosav4ig Дата: Среда, 13.11.2019, 01:11 | Сообщение № 2189 | Тема: удаление тегов регулярным выражением
Группа: Друзья
Ранг: Старожил
Сообщений: 2347
Репутация: 989 ±
Замечаний: 0% ±

Excel 2007,2010,2013
Здравствуйте
[vba]
Код
.Pattern = "<.*?>"
[/vba]


email:krosav4ig26@gmail.com WMR R207627035142 WMZ Z821145374535 ЯД 410012026478460
 
Ответить
СообщениеЗдравствуйте
[vba]
Код
.Pattern = "<.*?>"
[/vba]

Автор - krosav4ig
Дата добавления - 13.11.2019 в 01:11
krosav4ig Дата: Среда, 13.11.2019, 02:21 | Сообщение № 2190 | Тема: Запрос фамилии при запуске файла
Группа: Друзья
Ранг: Старожил
Сообщений: 2347
Репутация: 989 ±
Замечаний: 0% ±

Excel 2007,2010,2013
Здравствуйте [vba]
Код
Private Sub Workbook_Open()
    Dim SName
    If [type(User!A1)] <> 2 Then
        Do
            SName = Application.InputBox("Введите фамилию")
            If TypeName(SName) = "String" And Not IsNumeric(SName) Then Exit Do
            SName = False
        Loop While MsgBox("Повторить ввод?", 4) = 6
        If SName = False Then
            Me.Close False
        Else
            With Me.Sheets.Add
                .Visible = 2: .Name = "User"
                .[A1] = SName: Me.Save
            End With
        End If
    Else
        MsgBox [User!A1]
    End If
End Sub
[/vba]Здравствуйте


email:krosav4ig26@gmail.com WMR R207627035142 WMZ Z821145374535 ЯД 410012026478460
 
Ответить
СообщениеЗдравствуйте [vba]
Код
Private Sub Workbook_Open()
    Dim SName
    If [type(User!A1)] <> 2 Then
        Do
            SName = Application.InputBox("Введите фамилию")
            If TypeName(SName) = "String" And Not IsNumeric(SName) Then Exit Do
            SName = False
        Loop While MsgBox("Повторить ввод?", 4) = 6
        If SName = False Then
            Me.Close False
        Else
            With Me.Sheets.Add
                .Visible = 2: .Name = "User"
                .[A1] = SName: Me.Save
            End With
        End If
    Else
        MsgBox [User!A1]
    End If
End Sub
[/vba]Здравствуйте

Автор - krosav4ig
Дата добавления - 13.11.2019 в 02:21
krosav4ig Дата: Среда, 13.11.2019, 08:52 | Сообщение № 2191 | Тема: Гистограммы в графике от количества дней в месяце
Группа: Друзья
Ранг: Старожил
Сообщений: 2347
Репутация: 989 ±
Замечаний: 0% ±

Excel 2007,2010,2013
вариант с помощью надстройки Saparklines for Excel с небольшой доработкой, модули с изменениями прикрепляю, их нужно будет заменить в надстройке (старые удалить, эти перетянуть в проект)
К сообщению приложен файл: 5780605.xlsx (35.5 Kb) · Utility.bas (61.2 Kb)


email:krosav4ig26@gmail.com WMR R207627035142 WMZ Z821145374535 ЯД 410012026478460
 
Ответить
Сообщениевариант с помощью надстройки Saparklines for Excel с небольшой доработкой, модули с изменениями прикрепляю, их нужно будет заменить в надстройке (старые удалить, эти перетянуть в проект)

Автор - krosav4ig
Дата добавления - 13.11.2019 в 08:52
krosav4ig Дата: Среда, 13.11.2019, 08:53 | Сообщение № 2192 | Тема: Гистограммы в графике от количества дней в месяце
Группа: Друзья
Ранг: Старожил
Сообщений: 2347
Репутация: 989 ±
Замечаний: 0% ±

Excel 2007,2010,2013
Модуль класса с изменениями
К сообщению приложен файл: GanttChartClass.cls (13.2 Kb)


email:krosav4ig26@gmail.com WMR R207627035142 WMZ Z821145374535 ЯД 410012026478460
 
Ответить
СообщениеМодуль класса с изменениями

Автор - krosav4ig
Дата добавления - 13.11.2019 в 08:53
krosav4ig Дата: Суббота, 16.11.2019, 05:29 | Сообщение № 2193 | Тема: Выпадающий список на примере Павлова
Группа: Друзья
Ранг: Старожил
Сообщений: 2347
Репутация: 989 ±
Замечаний: 0% ±

Excel 2007,2010,2013
Нет, проверка данных работает только с диапазоном, а указать можно только неразрывный диапазон,
а вот и нет! если потанцевать правильный танец с бубном, то можно и уникальные значения в выпадающий список вывести, и собрать выпадающий список из нескольких диапазонов (под выпадающим списком имею ввиду проверка данных->список, если чо)
Сергей13, дайте пример файла, а то самому клепать лень очень

немного поясню
Нет, проверка данных работает только с диапазоном
с этой частью абсолютно согласен, но, проверка данных работает с любым диапазоном, даже с несуществующим, в т.ч.
[vba]
Код
Function xxx(что-то там) as range
[/vba] или, на худой случай [vba]
Код
=РЕЗУЛЬТ(8)
[/vba]
как ни странно, второй вариант для конечного пользователя более удобен, т.к. позволяет задавать проверку данных без создания имен


email:krosav4ig26@gmail.com WMR R207627035142 WMZ Z821145374535 ЯД 410012026478460

Сообщение отредактировал krosav4ig - Суббота, 16.11.2019, 05:42
 
Ответить
Сообщение
Нет, проверка данных работает только с диапазоном, а указать можно только неразрывный диапазон,
а вот и нет! если потанцевать правильный танец с бубном, то можно и уникальные значения в выпадающий список вывести, и собрать выпадающий список из нескольких диапазонов (под выпадающим списком имею ввиду проверка данных->список, если чо)
Сергей13, дайте пример файла, а то самому клепать лень очень

немного поясню
Нет, проверка данных работает только с диапазоном
с этой частью абсолютно согласен, но, проверка данных работает с любым диапазоном, даже с несуществующим, в т.ч.
[vba]
Код
Function xxx(что-то там) as range
[/vba] или, на худой случай [vba]
Код
=РЕЗУЛЬТ(8)
[/vba]
как ни странно, второй вариант для конечного пользователя более удобен, т.к. позволяет задавать проверку данных без создания имен

Автор - krosav4ig
Дата добавления - 16.11.2019 в 05:29
krosav4ig Дата: Суббота, 16.11.2019, 16:33 | Сообщение № 2194 | Тема: Выпадающий список на примере Павлова
Группа: Друзья
Ранг: Старожил
Сообщений: 2347
Репутация: 989 ±
Замечаний: 0% ±

Excel 2007,2010,2013
нет возможности указать динамический массив
ну, значит я прям волшебник какой-то и делаю невозможное :)
К сообщению приложен файл: 5121005.xlsm (43.9 Kb)


email:krosav4ig26@gmail.com WMR R207627035142 WMZ Z821145374535 ЯД 410012026478460
 
Ответить
Сообщение
нет возможности указать динамический массив
ну, значит я прям волшебник какой-то и делаю невозможное :)

Автор - krosav4ig
Дата добавления - 16.11.2019 в 16:33
krosav4ig Дата: Суббота, 16.11.2019, 21:46 | Сообщение № 2195 | Тема: Загрузка различных числовых значений с листа в комбобоксы.
Группа: Друзья
Ранг: Старожил
Сообщений: 2347
Репутация: 989 ±
Замечаний: 0% ±

Excel 2007,2010,2013
[vba]
Код

Private Sub CommandButton1_Click()
    ComboBox1.Style = 0
    
    ComboBox1.Value = Range("A2").Text
End Sub

Private Sub CommandButton2_Click()
    ComboBox2.Value = Format(Range("B2").Value, "00")
End Sub
[/vba]


email:krosav4ig26@gmail.com WMR R207627035142 WMZ Z821145374535 ЯД 410012026478460

Сообщение отредактировал krosav4ig - Суббота, 16.11.2019, 21:46
 
Ответить
Сообщение[vba]
Код

Private Sub CommandButton1_Click()
    ComboBox1.Style = 0
    
    ComboBox1.Value = Range("A2").Text
End Sub

Private Sub CommandButton2_Click()
    ComboBox2.Value = Format(Range("B2").Value, "00")
End Sub
[/vba]

Автор - krosav4ig
Дата добавления - 16.11.2019 в 21:46
krosav4ig Дата: Суббота, 16.11.2019, 22:10 | Сообщение № 2196 | Тема: Загрузка различных числовых значений с листа в комбобоксы.
Группа: Друзья
Ранг: Старожил
Сообщений: 2347
Репутация: 989 ±
Замечаний: 0% ±

Excel 2007,2010,2013
Сергей13,
ComboBox1.Value = Range("A2").Text


email:krosav4ig26@gmail.com WMR R207627035142 WMZ Z821145374535 ЯД 410012026478460
 
Ответить
СообщениеСергей13,
ComboBox1.Value = Range("A2").Text

Автор - krosav4ig
Дата добавления - 16.11.2019 в 22:10
krosav4ig Дата: Воскресенье, 17.11.2019, 22:09 | Сообщение № 2197 | Тема: вывести число ПИ, каждый знак в отдельной ячейке
Группа: Друзья
Ранг: Старожил
Сообщений: 2347
Репутация: 989 ±
Замечаний: 0% ±

Excel 2007,2010,2013
Вариант через Power Query, 1000000 символов с http://www.eveandersson.com/pi/digits/1000000
[vba]
Код
let
    Source = Table.SelectRows(Web.Page(Web.Contents("http://www.eveandersson.com/pi/digits/1000000"))[Data]{0}[Children]{0}{[Name="BODY"]}[Children],each [Name]="TABLE"),
    fn=(_)=>[Children]{0}?[Children]{0}?[Children]{0}?[Children]{0}?[Children]{0}?[Text]?,
    Pi = Text.Clean(fn(Table.SelectRows(Source, each fn(_) <> null)){0})&Text.Repeat(" ",498),
    Digits = Table.FromRows(List.Transform(Splitter.SplitTextByRepeatedLengths(2900)(Pi),Text.ToList),List.Transform({1..2900},Text.From))
in
    Digits
[/vba]
в файле загружено 200 символов, для загрузки остальных обновить запрос
К сообщению приложен файл: Pi_1000000_2900.xlsx (87.4 Kb)


email:krosav4ig26@gmail.com WMR R207627035142 WMZ Z821145374535 ЯД 410012026478460
 
Ответить
СообщениеВариант через Power Query, 1000000 символов с http://www.eveandersson.com/pi/digits/1000000
[vba]
Код
let
    Source = Table.SelectRows(Web.Page(Web.Contents("http://www.eveandersson.com/pi/digits/1000000"))[Data]{0}[Children]{0}{[Name="BODY"]}[Children],each [Name]="TABLE"),
    fn=(_)=>[Children]{0}?[Children]{0}?[Children]{0}?[Children]{0}?[Children]{0}?[Text]?,
    Pi = Text.Clean(fn(Table.SelectRows(Source, each fn(_) <> null)){0})&Text.Repeat(" ",498),
    Digits = Table.FromRows(List.Transform(Splitter.SplitTextByRepeatedLengths(2900)(Pi),Text.ToList),List.Transform({1..2900},Text.From))
in
    Digits
[/vba]
в файле загружено 200 символов, для загрузки остальных обновить запрос

Автор - krosav4ig
Дата добавления - 17.11.2019 в 22:09
krosav4ig Дата: Воскресенье, 17.11.2019, 22:58 | Сообщение № 2198 | Тема: Ограничение на ввод нулей вначале значений
Группа: Друзья
Ранг: Старожил
Сообщений: 2347
Репутация: 989 ±
Замечаний: 0% ±

Excel 2007,2010,2013
а может так
[vba]
Код
Private Sub Txb2_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger)
    Select Case KeyAscii
        Case 48
            If Len(Txb2) * Txb2.SelStart = 0 Then KeyAscii = 0
        Case 49 To 57
        Case Else
             KeyAscii = 0
    End Select
End Sub
[/vba]


email:krosav4ig26@gmail.com WMR R207627035142 WMZ Z821145374535 ЯД 410012026478460

Сообщение отредактировал krosav4ig - Воскресенье, 17.11.2019, 23:22
 
Ответить
Сообщениеа может так
[vba]
Код
Private Sub Txb2_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger)
    Select Case KeyAscii
        Case 48
            If Len(Txb2) * Txb2.SelStart = 0 Then KeyAscii = 0
        Case 49 To 57
        Case Else
             KeyAscii = 0
    End Select
End Sub
[/vba]

Автор - krosav4ig
Дата добавления - 17.11.2019 в 22:58
krosav4ig Дата: Четверг, 21.11.2019, 09:25 | Сообщение № 2199 | Тема: Генерация QR кода по данным из таблицы
Группа: Друзья
Ранг: Старожил
Сообщений: 2347
Репутация: 989 ±
Замечаний: 0% ±

Excel 2007,2010,2013
1 строка в гугле http://goqr.me/api/doc/create-qr-code/
Код
=image(JOIN("=";"https://api.qrserver.com/v1/create-qr-code/?size=185x185&ecc=L&qzone=3&format=png&data";ENCODEURL(join(" ";A2;B2;C2)));3)


email:krosav4ig26@gmail.com WMR R207627035142 WMZ Z821145374535 ЯД 410012026478460
 
Ответить
Сообщение1 строка в гугле http://goqr.me/api/doc/create-qr-code/
Код
=image(JOIN("=";"https://api.qrserver.com/v1/create-qr-code/?size=185x185&ecc=L&qzone=3&format=png&data";ENCODEURL(join(" ";A2;B2;C2)));3)

Автор - krosav4ig
Дата добавления - 21.11.2019 в 09:25
krosav4ig Дата: Пятница, 22.11.2019, 12:24 | Сообщение № 2200 | Тема: Генерация QR кода по данным из таблицы
Группа: Друзья
Ранг: Старожил
Сообщений: 2347
Репутация: 989 ±
Замечаний: 0% ±

Excel 2007,2010,2013


email:krosav4ig26@gmail.com WMR R207627035142 WMZ Z821145374535 ЯД 410012026478460
 
Ответить
Мир MS Excel » Записи участника » krosav4ig [2347]
Поиск:

Яндекс.Метрика Яндекс цитирования
© 2010-2024 · Дизайн: MichaelCH · Хостинг от uCoz · При использовании материалов сайта, ссылка на www.excelworld.ru обязательна!