sütundaki alfanumerik kodun son değerini nasıl bulurum.

Katılım
9 Nisan 2015
Mesajlar
494
Excel Vers. ve Dili
2003 TÜRKÇE EXCEL
Altın Üyelik Bitiş Tarihi
10-04-2025
Sayın arkadaşlar,
Çalışma yapmakta olduğum dosyanın devamı için aşağıdaki takıldığım konuda
yardım ihtiyacım var.

Ekli dosyada A sütunundaki kodlar 120.A.., 120B.., ....120.Z..
şeklinde devam ediyor. C sütununda Alfabetik sıra yazılı olup
F sütuna yapılacak formül ile A sütunundaki 120.A90 olarak sayılal değeri 01,02...90 olmuş bu kodu bulup F3 hücresine değeri yazacak..BU işlem
B,C,D...Z harfleri içinde aşağıya doğru devam edecek...

H ve J sütunlarındaki bazı formülleri çalıştım. bunlar içinde önerinizi belirtiniz.

Teşekkür ederim.
 

Ekli dosyalar

Ömer BARAN

Uzman
Katılım
8 Mart 2011
Mesajlar
12,997
Excel Vers. ve Dili
Office 2013 ( 32 bit ) TÜRKÇE
Altın Üyelik Bitiş Tarihi
(18.03.2020) - Uzman olduğu için tarih geçersiz oldu.
Kemal Bey tam olarak ne istediğiniz anlaşılmıyor.
Ama şunu söyleyeyim.
E1 hücresine aşağıdaki formülü uygulayıp aşağı doğru kopyalarsanız, ilgili harf grubundan kaç eleman olduğunu bulabilirsiniz. A grubunda 67 sayısı yok o yüzden formül sonucu 89, sanırım istediğiniz, 90 sayısı ama bunun için başka çözüm aramak lazım.
Kod:
=EĞERSAY($A$2:$A$818;D3&"*")
 

Ömer BARAN

Uzman
Katılım
8 Mart 2011
Mesajlar
12,997
Excel Vers. ve Dili
Office 2013 ( 32 bit ) TÜRKÇE
Altın Üyelik Bitiş Tarihi
(18.03.2020) - Uzman olduğu için tarih geçersiz oldu.
Tekrar merhaba.

KOD kullanılarak bulunmuş çözüm ekli belgede.

Dosya 24 numaralı cevapta.
 
Son düzenleme:

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
43,095
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
Merhaba,

F3 hücresine (dizi formüldür)
Kod:
=EĞERHATA(İNDİS($A$3:$A$1000;BÜYÜK(EĞER(SOLDAN($A$3:$A$1000;UZUNLUK(D3))=D3;SATIR($A$3:$A$1000)-2);1));"")
H3 hücresine;
Kod:
=EĞER(F3="";"";SOLDAN(F3;5)&METNEÇEVİR(J3+1;"00"))
J3 hücresine;
Kod:
=YERİNEKOY(F3;SOLDAN(F3;5);"")
 
Katılım
9 Nisan 2015
Mesajlar
494
Excel Vers. ve Dili
2003 TÜRKÇE EXCEL
Altın Üyelik Bitiş Tarihi
10-04-2025
Korhan Bey Teşekkür ederim.
f3 hücresine yazılacak olan aşağıdaki formülünüzü excel 2003 için Ehatalıysa formülüne çevirererek yazabilmeniz mümkün mü? Denedim ama oluşturamadım.
=EĞERHATA(İNDİS($A$3:$A$1000;BÜYÜK(EĞER(SOLDAN($A$3:$A$1000;UZUNLUK(D3))=D3;SATIR($A$3:$A$1000)-2);1));"")

Ayrıca F3 hücresi ve devamına yazılacak formül D3:D30 aralığında yazılı olan harflere bağlı olarak 27 satırda çalışacak bir formül olup
A3:A1000 aralığındaki 120.A ile başlayan A harfinin devamındaki en büyük sayılı değer olan 120.A90'nı bulmuş olacak.Yani F3 hücresine
120.A90 bularak yazmış olacak. Aynı şekilde 120.B57 de 120.B.. ile başlayan kodların en büyüğü olan 120.B57 yi bulum olacak
c,d,e,f,...z, ye kadar devam edecek...
Teşekkür ederim.
 
Son düzenleme:
Katılım
9 Nisan 2015
Mesajlar
494
Excel Vers. ve Dili
2003 TÜRKÇE EXCEL
Altın Üyelik Bitiş Tarihi
10-04-2025
Sayın Ömer Üstadım. Teşekkür ederim.
Yapmaya çalıştığım yani açacağım hesap kodunun A harfinden olanların en sonunu bulup örnekteki 120.A90 en sonu bu bilgi elimde olunca 120.A91 ve buna ilişkin kaçtane A harfi ile başlayan firma varsa başlarına 120.A91... 120.A92 olarak yazabilmek.
Bu bağlamda KOD kullanılarak bulduğunuz 120.A67 de düşüncemde idi... Teşekkür ederim.
Bu kod çalışmasını bir sütunda bulunan A,B,C,....Z olarak yazılı harfler için yapabilmek mümkün mü.Yani KOD çalıştırınca bütün harflerinkini bulmuş olacak.
Teşekkür ederim.
 

Ömer BARAN

Uzman
Katılım
8 Mart 2011
Mesajlar
12,997
Excel Vers. ve Dili
Office 2013 ( 32 bit ) TÜRKÇE
Altın Üyelik Bitiş Tarihi
(18.03.2020) - Uzman olduğu için tarih geçersiz oldu.
Dosya 24 numaralı cevapta.
 
Son düzenleme:

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
43,095
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
Aşağıdaki gibi deneyin.

Kod:
=EĞER(EHATALIYSA(İNDİS($A$3:$A$1000;BÜYÜK(EĞER(SOLDAN($A$3:$A$1000;UZUNLUK(D3))=D3;SATIR($A$3:$A$1000)-2);1)));"";İNDİS($A$3:$A$1000;BÜYÜK(EĞER(SOLDAN($A$3:$A$1000;UZUNLUK(D3))=D3;SATIR($A$3:$A$1000)-2);1)))
 
Katılım
9 Nisan 2015
Mesajlar
494
Excel Vers. ve Dili
2003 TÜRKÇE EXCEL
Altın Üyelik Bitiş Tarihi
10-04-2025
Merhaba Korhan Bey,
EĞERHATA( formülünün Eğer(ehatalıysa ( şeklinde yazılmasını anladım.
yazılan formül işi görmüyor. 5 numaralı pencerede ikinci paragrafta anlattığım ve aşağıa tekrara aldığım duruma göre formül gerekli...

6. PENCEREDE Ömer Baran Üstadıma da yazdığımı okursanız konuyu pekiştirir.

Ayrıca F3 hücresi ve devamına yazılacak formül D3: D30 aralığında yazılı olan harflere bağlı olarak 27 satırda çalışacak bir formül olup
A3:A1000 aralığındaki 120.A ile başlayan A harfinin devamındaki en büyük sayılı değer olan 120.A90'nı bulmuş olacak.Yani F3 hücresine
120.A90 bularak yazmış olacak. Aynı şekilde 120.B57 de 120.B.. ile başlayan kodların en büyüğü olan 120.B57 yi bulum olacak
c,d,e,f,...z, ye kadar devam edecek...
Teşekkür ederim.
 

Ömer BARAN

Uzman
Katılım
8 Mart 2011
Mesajlar
12,997
Excel Vers. ve Dili
Office 2013 ( 32 bit ) TÜRKÇE
Altın Üyelik Bitiş Tarihi
(18.03.2020) - Uzman olduğu için tarih geçersiz oldu.
Merhaba Kemal Bey.
7 numaralı cevaba eklediğim belgede, her harf grubu için ilk boş numarayı veriyor.

A grubuna dikkat edin, arada atlanmış bir numara var ve kod da doğal olarak 120.A67 olarak değer veriyor, o numarayı da kullandığınızda kod bu sefer 120.A91 sonucunu verecek.

Formül uygulamasında da ilgili harf grubundaki maksimum sayıyı bulmaya uğraşmak bence gereksiz, kod verirken numara atlaması yapmayacaksanız SAĞDAN, SOLDAN gibi formüllere DİZİ FORMÜLLERİNE filan gerek olmaksızın basit bir EĞERSAY formülüyle sonucu bulabilirsiniz, buna ilişkin formülü de 2 numaralı cevapta vermiştim.

Sorun ya da ihtiyaç nedir anlayamadım doğrusu.

Elinizde ilk kez alt hesap açılacak A harfiyle başlayan, B harfiyle başlayan firma listesi var ve bunlara hesap kodu vermeye çalışıyorsanız, böyle bir liste ekleyin ve çözüm bulunsun.
Gerçi o da sorun değil aslında; yukarıdaki EĞERSAY işlevinin sonucuna, üstten aşağıya doğru A ile başlayan müşteri adeti kadar (o da EĞERSAY ile tespit edilebilir) + demek yeterli olacaktır.

Yani bir sayfada hesap açılmış müşteri adları ve 120'li hesap kodlarının olduğu bir liste (yani 120 hesap için hesap planı dökümünü eklersiniz, başka bir sayfaya da yer-ni hesap açılacak müşteri adları listesini eklersiniz, iki adet EĞESAY işleviyle yeni kodları kolaylıkla bulabilirsiniz.

Dosya 24 numaralı cevapta.
 
Son düzenleme:

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
43,095
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
Merhaba,

Dosyanızda önerdiğim formülleri uyguladım. İstediğiniz sonuç ekteki gibi değil mi?
 

Ekli dosyalar

Katılım
9 Nisan 2015
Mesajlar
494
Excel Vers. ve Dili
2003 TÜRKÇE EXCEL
Altın Üyelik Bitiş Tarihi
10-04-2025
Sayın Ömer Baran Üstadım, iyi akşamlar.
tarafınızdan yapılmış 7 numaralı cevaba eklediğiniz belgede, her harf grubu için ilk boş numarayı veriyor.BU konudan olmak üzere; A sütununda bulunan 120.A01 kod sistemin 120.A001 şeklinde yani harften sonra 3 hane gelecek şekilde değitirmek zorunda kaldım. BU dosya için yazdığınız VBA aşağıdaki gibi idi. A sütünundaki kod sistemine 120.A001, 120.A065, 120.B025 .... göre VBA daki değişikliği bir türlü tespit edemedim. Lütfen yardımcı olabilir misiniz? Teşekkür ederim.


Private Sub Worksheet_Change(ByVal Target As Range)
If Intersect(Target, [B1]) Is Nothing Then Exit Sub
If Cells(1, 2) = "" Then
Cells(1, 3) = ""
Exit Sub
End If
For a = 1 To [A65536].End(3).Row
If a < 10 Then
b = "0"
Else
b = ""
End If
k = "120." & Cells(1, 2).Text & b & a
If WorksheetFunction.CountIf(Range("A3:A2000"), k) = 0 Then
Cells(1, 3) = UCase(k)
Exit Sub
End If
Next
End Sub

Sub İLKBOŞKOD()
Range("C3:C" & [C65536].End(3).Row).ClearContents
For zz = 3 To 34
If Cells(zz, 2) = "" Then Exit Sub
For a = 1 To [A65536].End(3).Row
If a < 10 Then
b = "0"
Else
b = ""
End If
k = "120." & Cells(zz, 2).Text & b & a
If WorksheetFunction.CountIf(Range("A3:A2000"), k) = 0 Then GoTo 10
Next
10
Cells(zz, 3) = UCase(k)
Next
End Sub
 
Katılım
9 Nisan 2015
Mesajlar
494
Excel Vers. ve Dili
2003 TÜRKÇE EXCEL
Altın Üyelik Bitiş Tarihi
10-04-2025
Sayın Ömer Baran üstadım iyi akşamlar.
7 numaralı yanıtınızdaki ekli tablonun A sütununda bulunan 120.A01, 120.A02....120.Z01 gibi
harften sonra iki haneli kod İHTİYAÇTAN DOLAYI harften sonra ÜÇ HANELİ olarak yapmak ihtiyacım oldu.( 120.A001, 120.A002,.... 120.B017, 120.C018... gibi) bu durumda tarfınzdan yapılmış aşağıdaki VB 'de yapılması gereken düzenlemeyi yapamadım. Lütfen yardımcı olabilir misiniz.Teşekkür ederim.
MEVCUT KOD AŞAĞIDAKİ GİBİ.

Private Sub Worksheet_Change(ByVal Target As Range)
If Intersect(Target, [B1]) Is Nothing Then Exit Sub
If Cells(1, 2) = "" Then
Cells(1, 3) = ""
Exit Sub
End If
For a = 1 To [A65536].End(3).Row
If a < 10 Then
b = "0"
Else
b = ""
End If
k = "120." & Cells(1, 2).Text & b & a
If WorksheetFunction.CountIf(Range("A3:A2000"), k) = 0 Then
Cells(1, 3) = UCase(k)
Exit Sub
End If
Next
End Sub

Sub İLKBOŞKOD()
Range("C3:C" & [C65536].End(3).Row).ClearContents
For zz = 3 To 34
If Cells(zz, 2) = "" Then Exit Sub
For a = 1 To [A65536].End(3).Row
If a < 10 Then
b = "0"
Else
b = ""
End If
k = "120." & Cells(zz, 2).Text & b & a
If WorksheetFunction.CountIf(Range("A3:A2000"), k) = 0 Then GoTo 10
Next
10
Cells(zz, 3) = UCase(k)
Next
End Sub
 
Son düzenleme:
Katılım
9 Nisan 2015
Mesajlar
494
Excel Vers. ve Dili
2003 TÜRKÇE EXCEL
Altın Üyelik Bitiş Tarihi
10-04-2025
yanlış soru bölümüne yazdığımı düşündüğüm için mükerer oldu.özür dilerim.
 
Katılım
9 Nisan 2015
Mesajlar
494
Excel Vers. ve Dili
2003 TÜRKÇE EXCEL
Altın Üyelik Bitiş Tarihi
10-04-2025
Korhan Bey, sizin yazıyı geç fark ettim. kusura bakmayın. Evet formül ile yapılan düzenleme doğru teşekkür ederim.
 

Ömer BARAN

Uzman
Katılım
8 Mart 2011
Mesajlar
12,997
Excel Vers. ve Dili
Office 2013 ( 32 bit ) TÜRKÇE
Altın Üyelik Bitiş Tarihi
(18.03.2020) - Uzman olduğu için tarih geçersiz oldu.
Benim yüklediğim belgeye, sorunuzla ilgili yeni veriler ekleyip siteye yükleyin ki bakabilelim.

Veri nedir?
İstenen sonuç nedir?
Mevcut hesap kodları 1'den başlayıp 999'a kadar mı olacak?
vs gibi sorularının netleşmesi lazım.

Mükerrer cevabı silmek için birinin sağındaki "DÜZELT" düğmesine tıklayıp mesaj içeriğini silebilirsiniz.
Ayrıca kod metinlerini
Kod:
 ayraçları arasına almalısınız, tıpkı formüller için tarif ettiğim şekilde.
 
Katılım
9 Nisan 2015
Mesajlar
494
Excel Vers. ve Dili
2003 TÜRKÇE EXCEL
Altın Üyelik Bitiş Tarihi
10-04-2025
Ömer Baran üstadım,
13 numaralı açıklamaya ilişkin tarafınızdan düzenlenmiş ve A sütununda 120.A001 gibi harften sonraki 3 haneli rakamsal kod düzenlemesi yapılmış şekliyle o dosya ektedir. AÇIKLAMA EKLİ DOSYA İÇERİSİNDE VAR.

eskiden yaptığımızda 01,02,03,04,05,06,07,08,09,10,11... gibi 99 kadar dı
şimdiki ekli dosyada ise 001,002,003,004,005,006,007,008,009,010,011,...,099,...,999
şeklinde oldu.
Hatırlata. 7 numaralı penceredeki ekli dosya VB sini de siz yapmıştınız.

Teşekkür ederim.
 

Ekli dosyalar

Son düzenleme:

Ömer BARAN

Uzman
Katılım
8 Mart 2011
Mesajlar
12,997
Excel Vers. ve Dili
Office 2013 ( 32 bit ) TÜRKÇE
Altın Üyelik Bitiş Tarihi
(18.03.2020) - Uzman olduğu için tarih geçersiz oldu.
Merhaba.
Dosya 24 numaralı cevapta.
 
Son düzenleme:
Katılım
9 Nisan 2015
Mesajlar
494
Excel Vers. ve Dili
2003 TÜRKÇE EXCEL
Altın Üyelik Bitiş Tarihi
10-04-2025
Ömer.Baran Üstadım daha gelişmişini yapmışsınız.teşekkür ederim. Ancak, döngüsel işlemi ve doğru değerleri bulup getirmediğini fark ettim.
Ekli dosyada üç sayfa halinde duruma ilişkin açıklamalı olarak gördüğüm sonuç durumları bildirmek istedim. Tekraren göz atabilir misisiniz? Teşekkür ederim.
 

Ekli dosyalar

Son düzenleme:

Ömer BARAN

Uzman
Katılım
8 Mart 2011
Mesajlar
12,997
Excel Vers. ve Dili
Office 2013 ( 32 bit ) TÜRKÇE
Altın Üyelik Bitiş Tarihi
(18.03.2020) - Uzman olduğu için tarih geçersiz oldu.
Dosya 24 numaralı cevapta.
 
Son düzenleme:
Üst