Satırdaki bir kısmı otomatik numaralandırma

Katılım
9 Ekim 2015
Mesajlar
9
Excel Vers. ve Dili
öğrenci
Merhabalar, elimde bir kod var ve belli bir yerini alt alta sürekli numaralandırmam gerek örneğin;

Kod:
TAG POS=[B]249[/B] TYPE=BUTTON ATTR=TXT:Davet<SP>Et
WAIT SECONDS=1
TAG POS=[B]250[/B] TYPE=BUTTON ATTR=TXT:Davet<SP>Et
WAIT SECONDS=1
TAG POS=[B]251[/B] TYPE=BUTTON ATTR=TXT:Davet<SP>Et
WAIT SECONDS=1
her yeri aynı kalacak sadece POS= yazısından sonra numaraları değişecek böyle 1000e kadar gitmesi gerek bunu yapabilmem mümkün mü acaba
 
Son düzenleme:
Katılım
13 Ekim 2017
Mesajlar
178
Excel Vers. ve Dili
2003-tr
Altın Üyelik Bitiş Tarihi
13/02/2019
Bunu makro kodu ile yapacaksanız eğer şöyle bir mantık yürütebiliriz;

A sütunun da dediğiniz numara alanı olduğunu varsayarsak, B sütunu doluysa, A sütununa bir önceki numaranın +1 fazlasını ver. Örnek kod aşağıda. Daha ayrıntılı bir şey için örnek excel dosyası koymalısınız.

Kod:
Dim ilk As Integer, Son As Integer
ilk = 4
Son = 1000

For v = ilk To Son
If Not Range("B" & ilk).Value > "" Then GoTo atla:
If Range("A" & ilk - 1) < 0 Then
Range("A" & ilk - 1) = 0
End If
Range("A" & ilk) = Range("A" & ilk - 1) + 1
atla:
ilk = ilk + 1
Next v
Tabii, sayfaya veri eklendikçe otomatik rakam artırsın diyorsanız o zaman bu kodlar sayfanın Change özelliğine yazılır.
 
Son düzenleme:
Katılım
9 Ekim 2015
Mesajlar
9
Excel Vers. ve Dili
öğrenci
Bunu makro kodu ile yapacaksanız eğer şöyle bir mantık yürütebiliriz;

A sütunun da dediğiniz numara alanı olduğunu varsayarsak, B sütunu doluysa, A sütununa bir önceki numaranın +1 fazlasını ver. Örnek kod aşağıda. Daha ayrıntılı bir şey için örnek excel dosyası koymalısınız.

Kod:
Dim ilk As Integer, Son As Integer
ilk = 4
Son = 1000

For v = ilk To Son
If Not Range("D" & ilk).Value > "" Then GoTo atla:
If Range("C" & ilk - 1) < 0 Then
Range("C" & ilk - 1) = 0
End If
Range("C" & ilk) = Range("C" & ilk - 1) + 1
atla:
ilk = ilk + 1
Next v
Tabii, sayfaya veri eklendikçe otomatik rakam artırsın diyorsanız o zaman bu kodlar sayfanın Change özelliğine yazılır.
Öncelikle yanıtınız için teşekkürler hocam ancak acemiyim tam anlamadım ne demek istediğinizi maalesef, şu sayfayı aç şunu şöyle yap, CTRL+H gibi yönlendirebilirseniz çok sevinirim :)

hepsi bir satır bunların hocam alt alta yani örneğin;

satır1 TAG POS=249 TYPE=BUTTON ATTR=TXTavet<SP>Et
satır2 WAIT SECONDS=1
 
Katılım
13 Ekim 2017
Mesajlar
178
Excel Vers. ve Dili
2003-tr
Altın Üyelik Bitiş Tarihi
13/02/2019
Peki bunlar aynı hücrede mi? Yani biraz daha açıklarsanız öyle kod yazıp, tarif edeyim. Yani A hücresinde ne var, B hücresinde ne var. Hangi değere göre rakam artacak. Yani B doluysa A rakamı +1 olmalı mı diyorsunuz ?
 
Katılım
9 Ekim 2015
Mesajlar
9
Excel Vers. ve Dili
öğrenci
Peki bunlar aynı hücrede mi? Yani biraz daha açıklarsanız öyle kod yazıp, tarif edeyim. Yani A hücresinde ne var, B hücresinde ne var. Hangi değere göre rakam artacak. Yani B doluysa A rakamı +1 olmalı mı diyorsunuz ?
Hiç önemi yok hocam, ben bu satırları excelde kullanmayacağım zaten web için bir işte gerekli daha açıklayıcı yazmam gerekirse .txt belgesine atacağım diyeyim :) görsel: https://i.hizliresim.com/nJZ0EV.png dediğim gibi heryeri aynı kalacak sadece TAG POS= dan sonra olan sayıları artarak gidecek.
 
Son düzenleme:
Katılım
13 Ekim 2017
Mesajlar
178
Excel Vers. ve Dili
2003-tr
Altın Üyelik Bitiş Tarihi
13/02/2019
İlk ve son numaralara kaçtan kaça kadar numaralandırmasını istiyorsan yaz ve Numaralandır tuşuna bas.

Dosya:
https://www.dosyaupload.com/dxQL


Kodları:
Kod:
Private Sub CommandButton1_Click()
ilk = Range("D3").Value
son = Range("D4").Value

s1 = 1
s2 = 2
sson = son - ilk

Range("A:A").ClearContents


If Range("D3") > Range("D4") Then
MsgBox ("İlk değer son değerden küçük olamaz!")
End If
For v = s1 To sson
Range("A" & s1).Value = "TAG POS=" & ilk & " " & "TYPE=BUTTON ATTR=TXTavet<SP>Et"
Range("A" & s2).Value = "WAIT SECONDS=1"
ilk = ilk + 1
s1 = s1 + 2
s2 = s2 + 2
Next v

End Sub
 
Katılım
9 Ekim 2015
Mesajlar
9
Excel Vers. ve Dili
öğrenci
İlk ve son numaralara kaçtan kaça kadar numaralandırmasını istiyorsan yaz ve Numaralandır tuşuna bas.

[/CODE]

Hocam bu tam istediğim gibi, size çok teşekür ederim çok kral adamsınız.

sizin verdiğiniz kodu nasıl kullanacağım, txte world olarak mı açacağım
 
Son düzenleme:
Katılım
24 Nisan 2005
Mesajlar
3,669
Excel Vers. ve Dili
Office 2016 EN 64 Bit
Altın Üyelik Bitiş Tarihi
25/05/2022
Alternatif makrosuz;

Kod:
A1  e   TAG POS=    yazın
B1  e   249    yazın
C1  e   TYPE=BUTTON ATTR=TXT:Davet<SP>Et   yazın
D1  e   =A1&B1&C1   formülünü yazın

A2  ye   WAIT SECONDS=A   yazın
D2  ye   =A2   yazın
Şimdi, 1. ve 2. satırı seçip kenarındaki küçük kutucuktan tutup aşağı doğru çekin istediğiniz kadar çoğaltın.

D kolonu seçip kopyala / özel yapıştır / değerler yapın.
D kolonu seçip ctrl+h ile bul değiştir yapın ve bul'a =A değiştire =1 yapın. Tümünü değiştirin.

Uzunmuş gibi duruyor ancak bu yöntemi bu tür bir çok işlemde kullanabilirsiniz.
 
Katılım
9 Ekim 2015
Mesajlar
9
Excel Vers. ve Dili
öğrenci
Alternatif makrosuz;

Teşekkürler hocam, alttaki kodu nasıl açacağım acaba nereye yapıştırmam gerek

Kod:
Private Sub CommandButton1_Click()
ilk = Range("D3").Value
son = Range("D4").Value

s1 = 1
s2 = 2
sson = son - ilk

Range("A:A").ClearContents


If Range("D3") > Range("D4") Then
MsgBox ("İlk değer son değerden küçük olamaz!")
End If
For v = s1 To sson
Range("A" & s1).Value = "TAG POS=" & ilk & " " & "TYPE=BUTTON ATTR=TXTavet<SP>Et"
Range("A" & s2).Value = "WAIT SECONDS=1"
ilk = ilk + 1
s1 = s1 + 2
s2 = s2 + 2
Next v

End Sub
 
Son düzenleme:
Üst