Страницы: 1
RSS
Регистрация и поиск документов при помощи макроса, Нужно изменить макрос чтобы он регистрировал и воспроизводил формы с указанного номера а не с начала.
 
Доброго времени суток,

У меня есть два макроса. Один регистрирует документ по форме в таблице, другой воспроизводит указанный документ согласно введенного номера. Проблема заключается в том, что они регистрируют и читают только с первого номера. Мне необходимо начать список с другого. Что необходимо изменить в указанных ниже макросах для этого. Заранее благодарю за оказанную помощь!

Макрос для регистрации:
Код
Private Sub CommandButton1_Click()
Dim riga, nptw As Integer
Dim rigst, rigend, temp, Company As String
riga = 4
nptw = 0

' FIND THE NUMBER OF THE FIRST FREE RAW riga
Do Until Sheet1.Cells(riga, 1) = ""
riga = riga + 1
Loop
nptw = Sheet1.Cells(riga - 1, 1) + 1
Sheet1.Cells(riga, 1) = nptw
'linpt = Len(StrPTW)

Sheet1.Cells(riga, 2).Interior.ColorIndex = 36
Sheet1.Cells(riga, 2) = "Open"
Sheet2.Cells(1, 17) = nptw

Макрос для поиска и воспроизводства зарегестрированных документов в таблице:
Код
Private Sub CommandButton3_Click()

Dim riga, nptw, rptw, Intresp, linpt, I As Integer
Dim checkint As Boolean
Dim StrPTW As Variant
riga = 4
' Sheet1.Select
Do Until Sheet1.Cells(riga, 1) = ""
riga = riga + 1
Loop
StrPTW = InputBox("Insert the number of PTW", "Read PTW")
linpt = Len(StrPTW)


If StrPTW <> "" Then

'Check if the input is integer
checkint = True
For I = 1 To linpt

If Asc(Mid(StrPTW, I, 1)) < 48 Or Asc(Mid(StrPTW, I, 1)) > 57 Then
    checkint = False
    I = linpt
End If

Next

'In case the input contains oly integer digits can be converted in number
If checkint = True Then

nptw = Val(StrPTW)

If nptw <= riga - 4 Then
rptw = nptw + 3
Изменено: MrDP - 15.07.2019 10:46:34
 
MrDP, Измените своё сообщение, код должен быть оформлене тегами. ищите кнопочку на панели <..>. А то придут Модераторы и будут ругаться. :)
Код
Код

Ну ещё иногда файл пример помогает решить вопросы быстрее.
Изменено: Wild.Godlike - 15.07.2019 10:41:45
 
Большое спасибо исправил.
 
Для начала я бы это
Код
Do Until Sheet1.Cells(riga, 1) = ""
riga = riga + 1
Loop
nptw = Sheet1.Cells(riga - 1, 1) + 1
Sheet1.Cells(riga, 1) = nptw

поправил на это:
Код
Dim lrow&
 With Sheets1
     lrow = .Range("a" & .Rows.Count).End(xlUp).Row
     .Range("a" & lrow + 1).Value = .Range("a" & lrow).Value + 1
 End With

А вот вопрос не совсем понял. Что значит
Цитата
MrDP написал:
регистрируют и читают только с первого номера
и эта фраза так же не понятна.
Цитата
MrDP написал:
Мне необходимо начать список с другого
"Все гениальное просто, а все простое гениально!!!"
 
Добрый день,

Я имел в виду один макрос регистрирует документ в таблице начиная с № 1 а другой открывает его в развернутом виде на втором листе также начиная с №1 если документ не зарегестрирован через первый макрос в соответствии с номером по порядку то второй макрос его не видет. Проблема в том, что мне необходимо начать реестр не с №1 а, скажем, например, с №13ть. Надеюсь достаточно полно ответил на вопрос. Спасибо.
 
Цитата
MrDP написал:
а другой открывает его в развернутом виде на втором листе
Это как? Без файла примера,  все равно, как то запутанно.
"Все гениальное просто, а все простое гениально!!!"
Страницы: 1
Наверх