Выбрать дату в календареВыбрать дату в календаре

Страницы: 1
Вытащить № судебного дела из слипшегося текста
 
Код
Sub rneig()
Dim Iter1 As String
For i = 2 To 414
    Start = UCase(ThisWorkbook.Sheets(1).Cells(i, 11))
    posNom1 = InStr(Start, "№")
    posNom2 = InStr(Start, "N")
    If posNom1 > 0 Then
        Iter1 = Split(Start, "№")(1)
        posNom = posNom1
    ElseIf posNom2 > 0 Then
        Iter1 = Split(Start, "N")(1)
        posNom = posNom2
    End If
    
    posot = InStr(posNom, Start, "ОТ")
    posOther = RegularExpression(Iter1, "/(\d){2}")
    If posot > 0 Then
        Iter1 = Split(Iter1, "ОТ")(0)
    ElseIf posOther > 0 Then
        Iter1 = Mid(Iter1, 1, posOther + 4)
    End If
    ThisWorkbook.Sheets(1).Cells(i, 30) = Iter1
Next i
End Sub


Function RegularExpression(FindIn As String, Expr As String) As String
Set RegExp = CreateObject("VBScript.RegExp")
With RegExp
    .Global = False 'Все совпадения или только первое?
    .IgnoreCase = True 'Регистр неважен?
    .MultiLine = True 'Игнорировать переносы строк?
    .Pattern = Expr
End With
Set Matches = RegExp.Execute(FindIn)
RegularExpression = Matches.Item(0).FirstIndex
Set Matches = Nothing
Set RegExp = Nothing
End Function



Все ОК, кроме 291 и 340 строк....из-за детского садика(
Изменено: vl.sl - 28.06.2019 16:54:30
Надо в макросе восстановить активную кнопку, которая вкладывает в рассылку документ
 
Алексей Счастливый, Свойство кнопки Enabled поставьте в TRUE
Имена листов в ячейках таблицы, Имена листов в ячейках таблицы
 
andrew.efc, Ок. Прошу прощения. Не увидел
Имена листов в ячейках таблицы, Имена листов в ячейках таблицы
 
andrew.efc, Вы бы хоть написали по какой причине не был использован мой макрос или почему он не работает.
Имена листов в ячейках таблицы, Имена листов в ячейках таблицы
 
andrew.efc,
Код
Sub reign()
For Each sh In ThisWorkbook.Sheets
If sh.Name <> "Сводная" Then
    cnt = cnt + 1
    Sheets(1).Cells(cnt + 2, 2) = sh.Name
    
    Sheets(sh.Name).Range("B2") = sh.Name
End If
Next sh
End Sub
Изменено: vl.sl - 28.05.2019 15:07:19
Суммирование чисел, относящихся к датам, и выделение цветом
 
aleksey_dannik, Правильно. Потому что идет привязка к данным из 1 и 2 колонок.
Либо вставляйте после. Начиная с 3.
Либо поменять в коде (макросе) колонки после изменения.
Диалог выбора файла, если все условия соблюдены
 
Да, некрасиво с его стороны.
Изменено: vl.sl - 28.05.2019 11:01:25
Суммирование чисел, относящихся к датам, и выделение цветом
 
aleksey_dannik, В каком листе?
Если в 1-ом, то он и так будет.
Суммирование чисел, относящихся к датам, и выделение цветом
 
aleksey_dannik, Пожалуйста. Обнаружился баг. Так что рекомендую использовать новый файл:
Суммирование чисел, относящихся к датам, и выделение цветом
 
При добавлении новых ФИО также будет работать.
Колонки "C" и "D" можно удалять.
Суммирование чисел, относящихся к датам, и выделение цветом
 
aleksey_dannik, Вот.
У всех цветных есть примечания

Не забудьте включить макросы. Затем перейти в 1-ую вкладку и нажать кнопку.
Изменено: vl.sl - 28.05.2019 10:06:18
Суммирование чисел, относящихся к датам, и выделение цветом
 
aleksey_dannik, Ок. Ждите
Суммирование чисел, относящихся к датам, и выделение цветом
 
aleksey_dannik,
Цитата
aleksey_dannik написал:
Макрос не подходит.
Зря. Почти написал.
Может и пригодится:
Код
Private Sub CommandButton1_Click()
For i = 2 To Sheets(1).Cells(Rows.Count, 1).End(xlUp).Row
    dat = Sheets(1).Cells(i, 2)
    den = Day(dat)
    mes = MonthName(Month(dat))
    
    For j = 1 To 23
        If LCase(mes) = LCase(Replace(Sheets(2).Cells(j, 1), " ", "")) Then
            Sheets(2).Cells(j + 1, den).Interior.Color = vbYellow
        End If
    Next j
Next i
End Sub
Изменено: vl.sl - 28.05.2019 09:08:47
Суммирование чисел, относящихся к датам, и выделение цветом
 
aleksey_dannik, Думаю здесь макрос только писать. Потому что данные разбросаны.
При клике на запись в ЛистБоксе в текстбоксы записываются только значения последней строки, Форма для работы с бд студентов, все работает как надо, но есть ошибка в копировании содержимого из листбокса в текстбокс
 
kidly, Пожалуйста. Пользуйтесь точкой останова, она помогает ошибки фиксить.
При клике на запись в ЛистБоксе в текстбоксы записываются только значения последней строки, Форма для работы с бд студентов, все работает как надо, но есть ошибка в копировании содержимого из листбокса в текстбокс
 
Вам виднее зачем вы перезаписываете значения полей.
При клике на запись в ЛистБоксе в текстбоксы записываются только значения последней строки, Форма для работы с бд студентов, все работает как надо, но есть ошибка в копировании содержимого из листбокса в текстбокс
 
Еще вариант. Просто убрать эти строки
Код
    For Each c In Sheets("Sayfa1").Range("A2:A" & Sheets("Sayfa1").Range("A" & Rows.Count).End(xlUp).Row)
        If c = selectedName Then
           
            'TextBox1.Text = Sheets("Sayfa1").Cells(c.Row, 2)
            Me.Tbx11.Value = Sheets("Sayfa1").Cells(c.Row, 1)
            Me.Tbx12.Value = Sheets("Sayfa1").Cells(c.Row, 2)
            Me.Tbx13.Value = Sheets("Sayfa1").Cells(c.Row, 3)
            Me.Tbx14.Value = Sheets("Sayfa1").Cells(c.Row, 4)
            Me.Tbx15.Value = Sheets("Sayfa1").Cells(c.Row, 5)
            Me.Tbx16.Value = Sheets("Sayfa1").Cells(c.Row, 6)
            Me.Tbx17.Value = Sheets("Sayfa1").Cells(c.Row, 7)
            Me.Tbx18.Value = Sheets("Sayfa1").Cells(c.Row, 8)
            Me.Tbx19.Value = Sheets("Sayfa1").Cells(c.Row, 9)
            Me.Tbx20.Value = Sheets("Sayfa1").Cells(c.Row, 10)
            Me.Tbx21.Value = Sheets("Sayfa1").Cells(c.Row, 11)
            Me.TBx22.Value = Sheets("Sayfa1").Cells(c.Row, 12)
            Me.TBx23.Value = Sheets("Sayfa1").Cells(c.Row, 13)
            Me.Tbx24.Value = Sheets("Sayfa1").Cells(c.Row, 14)
            Me.Tbx25.Value = Sheets("Sayfa1").Cells(c.Row, 15)
            Me.Tbx26.Value = Sheets("Sayfa1").Cells(c.Row, 16)
            Me.Tbx27.Value = Sheets("Sayfa1").Cells(c.Row, 17)
            Me.Tbx28.Value = Sheets("Sayfa1").Cells(c.Row, 18)
            Me.Tbx29.Value = Sheets("Sayfa1").Cells(c.Row, 19)
        End If
    Next c
Изменено: vl.sl - 27.05.2019 15:39:54
При клике на запись в ЛистБоксе в текстбоксы записываются только значения последней строки, Форма для работы с бд студентов, все работает как надо, но есть ошибка в копировании содержимого из листбокса в текстбокс
 
При клике Вы вносите данные в текстбокс.
Только вот не с листбокса, а с листа1 в excel.
Вы вносите данные путем перебора дат.
Первую дату вы берете из строки листбокса, на которую кликнули.
Вторую берете из листа excel.
Если они одинаковые, то значения из листа вы вности в текстбоксы.
Не глупо ли?
Ведь у вас первая дата совпадает.
Варианты решения: указывать точные данные, которые не будут повторяться (если дата то до секунд; или включить в проверку еще и фамилию)
При клике на запись в ЛистБоксе в текстбоксы записываются только значения последней строки, Форма для работы с бд студентов, все работает как надо, но есть ошибка в копировании содержимого из листбокса в текстбокс
 
Сделайте отладку с этой строки и поймете о чем я.
При клике на запись в ЛистБоксе в текстбоксы записываются только значения последней строки, Форма для работы с бд студентов, все работает как надо, но есть ошибка в копировании содержимого из листбокса в текстбокс
 
Код
    For Each c In Sheets("Sayfa1").Range("A2:A" & Sheets("Sayfa1").Range("A" & Rows.Count).End(xlUp).Row)
        If c = selectedName Then


Наверно колонка не только "A" должна быть, а еще та, где имя указано.
Так как у вас даты одинаковые он первую строку из листа и берет
Изменено: vl.sl - 27.05.2019 15:20:51
Записать в активную ячейку надписи, соответствующие отмеченным CheckBox
 
Код
Private Sub CommandButton2_Click()
For i = 1 To 7
    If Controls("CheckBox" & i).Value = True Then
        fios = fios & vbLf & Controls("CheckBox" & i).Caption
    End If
Next i
ActiveCell.Value = fios
Unload Vibor_dokumenta
End Sub
Изменено: vl.sl - 27.05.2019 11:50:24
Вернуть все найденные в строке значения через VBA
 
Уберите в строках + 1.
И тогда выведет: Москва, Россия, ЮАР, Германия

Вот модифицированный код Пытливого.
Код
Sub FindAndPaste()
    Dim whIn As Worksheet, whOut As Worksheet, objR As Range, lngI As Long, strS As String
    Set whIn = Worksheets("Лист2"): Set whOut = Worksheets("Лист1")
    Set objR = whIn.UsedRange.Find(whOut.Range("E5"))
    If Not objR Is Nothing Then
        For lngI = 2 To whIn.UsedRange.Columns.Count
            With whIn
                If .Cells(objR.Row, lngI) <> "" Then
                    If lngI <> whIn.UsedRange.Columns.Count Then
                        strS = strS & .Cells(objR.Row, lngI) & ", "
                    Else
                        strS = strS & .Cells(objR.Row, lngI)
                    End If
                End If
            End With
        Next lngI
Else
   Exit Sub
    End If
    whOut.Range("F5") = strS
End Sub
Изменено: vl.sl - 26.05.2019 00:25:44
Вернуть все найденные в строке значения через VBA
 
Уберите в строках + 1.
И тогда выведет: Москва, Россия, ЮАР, Германия
Изменено: vl.sl - 24.05.2019 15:23:48
Возможность реализации журнала смен средствами Excel
 
Если рабочих мало и они не "Хакеры", то можно и без БД.
В лист положить, скрыть и защитить. И проект защитить.
Возможность реализации журнала смен средствами Excel
 
А сколько записей предполагается ?
Возможность реализации журнала смен средствами Excel
 
Да, возможно.
Страницы: 1
Loading...