• DİKKAT

    DOSYA İndirmek/Yüklemek için ÜCRETLİ ALTIN ÜYELİK Gereklidir!
    Altın Üyelik Hakkında Bilgi

B Sütununda veri varsa A sütununa sıra numarası koymak

Katılım
20 Aralık 2013
Mesajlar
195
Excel Vers. ve Dili
Microsoft Office Standart 2013 - Microsoft Windows 10 Enterprise
Merhaba

Aşağıdaki kod alıntıdır, bu kodu sayfanızın kod bölümüne yapıştırın.


Kod:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim s As Long
sonsat1 = Range("b65536").End(3).Row
sonsat2 = Range("a65536").End(3).Row
If sonsat1 >= sonsat2 Then sonsat = sonsat1 Else sonsat = sonsat2
For i = 3 To sonsat '3 rakamı satırı ifade ediyor
If Cells(i, 2).Value = "" Then
Cells(i, 1).Value = ""
Else
s = s + 1
Cells(i, 1).Value = s
End If
Next i
End Sub
 
Merhaba

Aşağıdaki kod alıntıdır, bu kodu sayfanızın kod bölümüne yapıştırın.


Kod:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim s As Long
sonsat1 = Range("b65536").End(3).Row
sonsat2 = Range("a65536").End(3).Row
If sonsat1 >= sonsat2 Then sonsat = sonsat1 Else sonsat = sonsat2
For i = 3 To sonsat '3 rakamı satırı ifade ediyor
If Cells(i, 2).Value = "" Then
Cells(i, 1).Value = ""
Else
s = s + 1
Cells(i, 1).Value = s
End If
Next i
End Sub

teşekkürler çalıştı ama çok kastı anlamadım...
 
Sayfanın kod bölümüne aşağıdaki kodu yapıştırın.

Kod:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Selection.Column <> 2 Then Exit Sub
Call sırala
End Sub

Bir modülede aşağıdaki kodu yapıştırın.

Kod:
Sub sırala()
Dim s As Long
sonsat1 = Range("b65536").End(3).Row
sonsat2 = Range("a65536").End(3).Row
If sonsat1 >= sonsat2 Then sonsat = sonsat1 Else sonsat = sonsat2
For i = 3 To sonsat '3 rakamı satırı ifade ediyor
If Cells(i, 2).Value = "" Then
Cells(i, 1).Value = ""
Else
s = s + 1
Cells(i, 1).Value = s
End If
Next i
End Sub
 
maalesef yine kastı
 
Aşağıdaki kodu deneyiniz.
Kod:
Sub sırala()
sonsat1 = Range("b65536").End(3).Row
sonsat2 = Range("a65536").End(3).Row
If sonsat1 >= sonsat2 Then sonsat = sonsat1 Else sonsat = sonsat2
dz = Range("A3:A" & sonsat)
For i = 3 To sonsat '3 rakamı satırı ifade ediyor
If Cells(i, 2).Value = "" Then
    s = s + 1
    dz(s, 1) = ""
Else
    s = s + 1
    sıra = sıra + 1
    dz(s, 1) = sıra
End If
Next i
Application.Calculation = xlCalculationManual
Range("A3:A" & sonsat) = dz
Application.Calculation = xlCalculationAutomatic
End Sub
 
Aşağıdaki kodu deneyiniz.
Kod:
Sub sırala()
sonsat1 = Range("b65536").End(3).Row
sonsat2 = Range("a65536").End(3).Row
If sonsat1 >= sonsat2 Then sonsat = sonsat1 Else sonsat = sonsat2
dz = Range("A3:A" & sonsat)
For i = 3 To sonsat '3 rakamı satırı ifade ediyor
If Cells(i, 2).Value = "" Then
    s = s + 1
    dz(s, 1) = ""
Else
    s = s + 1
    sıra = sıra + 1
    dz(s, 1) = sıra
End If
Next i
Application.Calculation = xlCalculationManual
Range("A3:A" & sonsat) = dz
Application.Calculation = xlCalculationAutomatic
End Sub

otomatik sıralmadı makro oluşturdu ama
 
Nasıl bir sıralama yapmasını istiyorsunuz?
Neye göre?
 
Peki tarihi hep son satıra mı atıyorsunuz? Yoksa aralara da tarih attığınız oluyor mu?
Eğer oluyorsa bu durumda sıra üsttekinin bir fazlası şeklinde mi olacak yoksa A sütunundaki en büyük sayının bir fazlası şeklinde mi?
 
Geri
Üst