• DİKKAT

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

ad soyad alanını sorguda ayırma

  • Konbuyu başlatan Konbuyu başlatan abkbek
  • Başlangıç tarihi Başlangıç tarihi
Katılım
16 Şubat 2007
Mesajlar
323
Excel Vers. ve Dili
office 2003 prof.tr
merhaba
arkadaşlar tabloda tek alanda bulunan ad soyad verisini sorguda ad ve soyad olarak (iki isimli kayıtlar da var) nasıl ayırabilirim. forumda araştırdım konu ile ilgili kod var ama bu kodu sorguda nasıl kullanabileceğimi bilmiyorum
 
Merhaba abkbek,
Formada ayırmak istersen sana bir örnek göderiyorum
İyi akşamalar
 
Sayın akd,

formda tamam, ama ben tabloda yeni alanlar kullanmadan sadece sorgu ile ayırıp bunu rapora yansıtmak istiyorum. direk sorgudaki fonksiyonlarla nasıl yapabilirim?
 
tabloda 2 alan daha açacaksın
 
Sayın akd,
onu anladım, ancak ben yukarıda da ifade ettiğim gibi tabloya alan eklemeden sorgu sonucunda nasıl yapılabilir, çünkü bu söylediğim excel'de mümkün, dolayısıyla excel'in yaptığını acces sorgusu mutlaka yapar mantığı ile düşünerek sorguda nasıl yapılabileceğini öğrenmek istiyorum
 
Sayın abkbek,

İşiniz haloldu sanırım.

Fonksiyonlar:

Kod:
Public Function Ad(strName As String) As String
    Dim intLoc As Integer
        intLoc = InStr(1, strName, " ")
        Ad = Left(strName, intLoc)
End Function
Public Function Soyad(strName As String) As String
    Dim intLoc As Integer
        intLoc = InStr(1, strName, " ")
        Soyad = Right(strName, Len(strName) - intLoc)
End Function


Sorguda ise Tabloda tüm adın yazıldığı alan FullName ise o zaman SQL cümlesi:

Kod:
SELECT tblTable.FullName, Ad([FullName]) AS Ad, Soyad([FullName]) AS Soyad
FROM tblTable;

Olmalı.

İyi çalışmalar:)
 
Sayın Modalı,
inanın size nasıl teşekkür edeceğimi bilemiyorum. yarın sabah erkenden mesaiye gideceğim ama bu problemi çözmeden uyuyamazdım. gönderdiğiniz kod ile çözüldü. bir kez daha sonsuz şükranlarımı sunuyorum.
saygılarımla iyi çalışmalar dilerim.
 
Arkadaşlar, yukardaki kodlar yabancı isimler için doğru bir ayırma olabilir, çünkü onlar aynı alanda önce soyad sonra isimlerini yazıyorlar. Ayırmada yukarıdaki kodlara göre sorun çıkmıyor. Bizde 4 kelime içeren ad soyad var. Son kelimeyi soyad olarak ayırması diğer üçünü de ad olarak yazması gerekir. Yukarıdaki kodlar bu isteğe cevap vermiyor ki. Daha önce sayın modalı üç ismi ayıran kodu isteğe uygun olarak

http://www.excel.web.tr/showthread.php?t=21727
adresinde vermişti. Ben de 4 ismi formülle ayıran bir örnek eklemiştim. Kod üzerinde 4 isim ayırma olarak uğraşmadım ama InStr fonksiyonuyla sol taraftaki boşluğu buluyoruz da sağ taraftaki boşluğu kısa yoldan bulacak bir fonksiyon varmıdır bilemem ama, öyle bir işleç varsa kısa bir kod veya formül yetecektir.
 
cevap

sende soyismi ayır kalanını ad olarak yaz kodlar muhteşem gerisi sana kalmış ama ondada sanırım kızlık soyadınıda kullanan olunca problem çıkar ama öyle biri yoksa hiçbir problem olmadan çalışır
 
Arkadaşlar Sayın modalı'nın gönderdiği düzeltmeleri ben kendi örneğime uyarladım (çok küçük değişikliklerle) ve yukarıda bahsedilen 4 isimli de dahil olmak üzere her türlü ayrımı (ayırmak istediğiniz soyad bilgisi en sonda olmak kaydıyla) yapıyor. incelemek isteyenler için en son düzeltilmiş örnek dosyayı ekte gönderiyorum.
 
Arkadaşlar, ad fonksiyonunu form üzerinde kullanırken hata veriyor. Name kelimesine çeviriyor. Fonksiyonun adını "ada" ve soyad fonksiyonunu da benzerlik olsun diye " soyada" olarak değiştirdim. Bu konu form ve sorgu üzerinde çözüldü zannederim. Emeği geçenlere teşekkürler.:hey:
 
Son düzenleme:
Geri
Üst