14/01/2020, 09:11
Excelde Auto İncrement Number
14/01/2020, 11:30
accessman
bu fonksiyon ile sayfa isminde kayıtlı olan son id numarasını buluruz
Function findLastCount(sheetName As String, Optional ayrac As String = "_") As Integer
Dim lastCount As Integer
Dim Ws As Worksheet
Dim lastUnderlineIndex As Integer
For Each Ws In ActiveWorkbook.Worksheets
If (InStr(Ws.Name, sheetName) > 0) Then
lastUnderlineIndex = InStrRev(Ws.Name, ayrac)
lastCount = CInt(Mid(Ws.Name, lastUnderlineIndex + 1, Len(Ws.Name) - lastUnderlineIndex))
End If
Next Ws
findLastCount = lastCount
End Function
Function findLastCount(sheetName As String, Optional ayrac As String = "_") As Integer
Dim lastCount As Integer
Dim Ws As Worksheet
Dim lastUnderlineIndex As Integer
For Each Ws In ActiveWorkbook.Worksheets
If (InStr(Ws.Name, sheetName) > 0) Then
lastUnderlineIndex = InStrRev(Ws.Name, ayrac)
lastCount = CInt(Mid(Ws.Name, lastUnderlineIndex + 1, Len(Ws.Name) - lastUnderlineIndex))
End If
Next Ws
findLastCount = lastCount
End Function
14/01/2020, 11:31
accessman
bu fonksiyon ile yeni ismi buluruz
Function renameSheet(lastSheetName As String, lastId As Integer, Optional ayrac As String = "_") As String
Dim realSheetName As String
Dim newSheetName As String
Dim lastUnderlineIndex As Integer
If (InStrRev(lastSheetName, ayrac) > 0) Then
lastUnderlineIndex = InStrRev(lastSheetName, ayrac)
realSheetName = Left(lastSheetName, lastUnderlineIndex - 1)
newSheetName = realSheetName & ayrac & lastId
Else
newSheetName = lastSheetName & ayrac & lastId
End If
renameSheet = newSheetName
End Function
Function renameSheet(lastSheetName As String, lastId As Integer, Optional ayrac As String = "_") As String
Dim realSheetName As String
Dim newSheetName As String
Dim lastUnderlineIndex As Integer
If (InStrRev(lastSheetName, ayrac) > 0) Then
lastUnderlineIndex = InStrRev(lastSheetName, ayrac)
realSheetName = Left(lastSheetName, lastUnderlineIndex - 1)
newSheetName = realSheetName & ayrac & lastId
Else
newSheetName = lastSheetName & ayrac & lastId
End If
renameSheet = newSheetName
End Function
14/01/2020, 11:34
accessman
bunun ile de userform yeni kayıt butonundan auto increment number değiştirip kaydederiz
lastId = findLastCount("MuayeneID", "_")
Dim Ws As Worksheet
Set Ws = Worksheets("MuayeneID" & "_" & lastId)
Ws.Name = renameSheet("MuayeneID", lastId + 1, "_")
lastId = findLastCount("MuayeneID", "_")
Dim Ws As Worksheet
Set Ws = Worksheets("MuayeneID" & "_" & lastId)
Ws.Name = renameSheet("MuayeneID", lastId + 1, "_")
14/01/2020, 11:35
accessman
bunun ile ilgili yeni kayıt satırının id sini ilgili hücreye yazarız
.Cells(iRow, 1) = CStr(lastId + 1)
.Cells(iRow, 1) = CStr(lastId + 1)
14/01/2020, 11:42
accessman
kullanmaya başladım harika oldu isterseniz sayfa ismini hiçbir zaman kod içersinde kullanmayacağınız bir sayfa seçebilirsiniz
sayfadaki kayıt sayısına bağlı olarak değişmeyen
hiçbir zaman tekrar verilmeyecek olan
kapatmakla kaybolmayan
son kullanıcının değiştirme imkanı olmayan yeni nesil
auto increment number
hayırlı olsun
sayfadaki kayıt sayısına bağlı olarak değişmeyen
hiçbir zaman tekrar verilmeyecek olan
kapatmakla kaybolmayan
son kullanıcının değiştirme imkanı olmayan yeni nesil
auto increment number
hayırlı olsun