(11/07/2017, 14:03)ozanakkaya yazdı: (06/07/2017, 10:22)Gokcen Akan yazdı: yardımınız için teşekkür ederim ama firmanı gizlilik ilkesi gereği herhangi bi dosya paylaşılması yazak pc den, anca eve gidince kendi pcimden örnek oluşturup bi Excel dosyası formatında atabilirm .
İlginiz için tekrardan teşekkürler
Merhaba, firmanıza ait veritabanını paylaşmayın, içerisinde gerçek bilgi içermeyen tablonuzun ve formunuzun bulunduğu basit veritabanı hazırlayıp ekleyin. Sorunuzu örneğiniz üzerinden düzenlemeye çalışalım.
Aksi halde bu konu 30. sayfaya kadar gider.
Merhabalar
Yeni konu açtım. Oradaki linkte bulabilirsiniz. İlginiz için teşekkürler.
Merhaba; Öncelkle ilişkili form ve tablo ile çalışmada aram pek iyi değildir, mantıklıda gelmiyor açıkçası..
o yüzden forma ait ilk iki satırı firma kodu ve firma adı bölümlerinin formdan ilişkilerini kaldırdım. Projelerinizde Türkçe karakter kullanmayınız. FirmaKodu yazarken FırmaKodu yazmışsınız ingilizcede küçük ı harfi malumunuz mevcut değil.
örneği inceleyip geri bildirimde bulununuz. Ayrıca kodları açık olarakta yayınladım.
Dim RS As New ADODB.Recordset
Dim sOrGu, FIRMAILK As String
sOrGu = "SELECT Left([FırmaKodu],1) AS FU, Min(Mid([FırmaKodu],2.6)) AS FN FROM KODLISTESI GROUP BY Left([FırmaKodu],1);"
RS.Open sOrGu, CurrentProject.Connection, adOpenKeyset, adLockOptimistic
FIRMAILK = Left(Me.FırmaUnvanı, 1)
Do Until RS.EOF
If RS!FU <> FIRMAILK Then GoTo 1212
Me.FırmaKodu = FIRMAILK & Format(RS!FN + 1, "000000")
GoTo 1213
1212
RS.MoveNext
Loop
Me.FırmaKodu = FIRMAILK & "000001"
1213
RS.Close: Set RS = Nothing
İki adet aynı içerik ve konulu soru olduğu için konular birleştirilmiştir. Ayrıca soru konu başlığı düzenlenmiştir.
(11/07/2017, 21:32)ozguryasin yazdı: İki adet aynı içerik ve konulu soru olduğu için konular birleştirilmiştir. Ayrıca soru konu başlığı düzenlenmiştir.
Öncellikle çok teşekkür ederim yardımlarınız için.
Söylemeye utanıyorum ki bir sıkıntı daha var
Kod ataması yaparken 00002 ye kadar atayabilyor
Listeyi oluştururken şu şekilde oldu;
A00001
A00002
A00002
A00002
...
...
B00001
B00002
B00002
...
Şeklinde gidiyor.
Onun dışında herşey tamam.
Son kez zahmet versem size, hataya bakabilir misiniz?
İnceleyip olumlu/olumsuz bildirimde bulununuz.
Sorgu bölümünde Min(Mid yerine Max(Mid yazarsanız sorun çözülür gözümden kaçmış. Veya kodları silin aşağıfaki kodları yapıştırın.
Alıntı:Kod:
Dim RS As New ADODB.Recordset
Dim sOrGu, FIRMAILK As String
sOrGu = "SELECT Left([FırmaKodu],1) AS FU, Max(Mid([FırmaKodu],2,6)) AS FN FROM KODLISTESI GROUP BY Left([FırmaKodu],1);"
RS.Open sOrGu, CurrentProject.Connection, adOpenKeyset, adLockOptimistic
FIRMAILK = Left(Me.FırmaUnvanı, 1)
Do Until RS.EOF
If RS!FU <> FIRMAILK Then GoTo 1212
Me.FırmaKodu = FIRMAILK & Format(RS!FN + 1, "000000")
GoTo 1213
1212
RS.MoveNext
Loop
Me.FırmaKodu = FIRMAILK & "000001"
1213
RS.Close: Set RS = Nothing