• DİKKAT

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

x Satırdaki ingilizce bilginin yerine y satırdaki türkçe bilginin gelmesi

Katılım
5 Nisan 2011
Mesajlar
18
Excel Vers. ve Dili
2007
Örnek dosya içerisinde üst satırdaki ingizlizce açıklamaları bir alt satırda türkçeye çevirip ekledim. 82 satıra kadar bunu manuel ekleyip yaptım.Amacım 83 satırdan itibaren üst satırdaki ingizlizce açıklamanın yerine alttaki satırdaki türkçe açıklamanın gelmesi.
Örneğin; 83. satırdaki ikinci virgülden sonra gelen 'Travel this interesting land. Question people about recent events and find out what''s happening. yazısının yerine

INSERT INTO `ava_games` VALUES (100074, 'Arrogancy: Demo', 'Travel this interesting land. Question people about recent events and find out what''s happening.', '157.swf', '101', 0, 1, '', '600', '450', '157.png', '3', '1');
84. satırdaki
Bu ilginç toprakta seyahat edin. Son olan olaylar hakkında insanlara sorular sorun ve ne olup bittiğini öğrenin.

kelimesinin gelerek 84. satırın silinmesi.
INSERT INTO `ava_games` VALUES (100074, 'Arrogancy: Demo', Bu ilginç toprakta seyahat edin. Son olan olaylar hakkında insanlara sorular sorun ve ne olup bittiğini öğrenin.', '157.swf', '101', 0, 1, '', '600', '450', '157.png', '3', '1');

ve mümkünse üçüncü virgülden sonraki parantez içindeki '157.swf' dosya isimlerinin önüne www.x1.com/ kelimesinin eklenerek 'www.x1.com/157.swf' haline gelmesi.

İnşallah istediğimi anlatabilmişimdir.
 

Ekli dosyalar

Merhaba,
Kodun doğru çalışması için verilerinizin belirli bir düzende olması gerekli. Eklediğiniz dosyada Kimi İngilizce verileriniz ikiye bölinmüş ve iki satır kaplamış. Bazı kısımlarda alt alta gelen Türkçe açıklamalar mevcut. Verilerinizi ayrı bir sayfaya kopyalayıp kodu deneyin hata verdiği yerde debug'a basın. Mause ile x değerinin üzerine gelin hatanın hangi satırda olduğunu göreceksiniz. Hata olan satırı veya bir altındaki satırı inceleyin ne demek istediğimi anlayacaksınız.
Kod:
Sub degistir()
Application.ScreenUpdating = False
SonSat = [a65536].End(3).Row - 1
For x = SonSat To 83 Step -2
ing = Split(Cells(x, 1), ", '")(2)
trk = Cells(x + 1, 1) & "'"
Cells(x, 1) = WorksheetFunction.Substitute(Cells(x, 1), ing, trk)
Rows(x + 1).Delete shift:=xlUp
Next
MsgBox "İşlem tamamlandı.", vbInformation, "DURUM"
End Sub
 
Hocam kodlar için çok teşekür ediyorum. Dünden beri Dediğiniz düzeltmeleri yaparak en sonunda kodları hatasız çalıştırdım. Ancak tek tırnaklı yazılarda sorun çıkmazken, üç tırnaklı açıklamalarda sorun çıkıyor. Elle düzelteyim dedim okadar çokki pes ettim.
örnek satırda görüldüğü gibi tek tırnaklı açıklamalrda ingilizce cumlenın yerıne turkce yazılar cuk oturuyor. Ama 3 tırnaklarda Yazının bir kısmı türkçe diğeri ingilizce oluyor.
INSERT INTO `ava_games` VALUES (1000338, 'I Hate Spiders','Örümcek ağlarından inerken böcekleri vurun ', 'ihatespiders.swf', '101', 1, 1, '', '400', '300', 'ihatespiders.png', '3', '1');
INSERT INTO `ava_games` VALUES (1000339, 'Indiana Jones','Pharonun kayıp hazinesini bulun fakat sizi durdurak için kurulmuş booby tuzakların dikkat edin ', but watch out for the booby traps set to stop you.''', 'indianajones2004.swf', '101', 1, 1, '', '770', '518', 'indianajones2004.png', '3', '1');

Bu şekilde işime yaramıyor.

Bunun yerine sizden şöyle bir şey rica etsem.
Örneğin 1. satırdaki ingilizce açıklamanın hemen yanına
varolan satırdaki örnek:
INSERT INTO `ava_games` VALUES (100074, 'Arrogancy: Demo', 'Travel this interesting land. Question people about recent events and find out what''s happening.', '157.swf', '101', 0, 1, '', '600', '450', '157.png', '3', '1'); Türkçe açıklama tırnak içinde gelirsede olur. Açıklama hem türkçe hem ıngılızce olur.
İstediğim sonuç.

INSERT INTO `ava_games` VALUES (100074, 'Arrogancy: Demo', 'Bu ilginç toprakta seyahat edin. Son olan olaylar hakkında insanlara sorular sorun ve ne olup bittiğini öğrenin.' 'Travel this interesting land. Question people about recent events and find out what''s happening.', '157.swf', '101', 0, 1, '', '600', '450', '157.png', '3', '1');
 
Merhaba,
2 nolu mesajımdaki kodları düzenledim. Bu tür işlemleri gerçekleştirebilmek için her verinizde aynı olan unsurların bulunması gerekiyor. ,(virgül) verisi işlem yapılan satırların hepsinde aynı düzende olduğu için virgülü tercih etmiştim. Gözden kaçan bazı satırlarda ingilizce metnin kendi bünyesinde de virgüllerin bulunması oldu. Böyle olunca düzen bozulmuş olduğundan kodda belirttiğiniz sıkıntı ortaya çıktı. Virgül yerine: , ' (virgül-tektırnak" işaretlerinin yan yana olduğu kısımları inceledim. Tüm verilerde aynı olduğunu gördüğümden yeni kodda bunu tercih ettim. Şu haliyle kodlar doğru çalışıyor. (İlk isteğinizi yapıyor.) Son mesajınızdaki isteğiniz fikir değişikliğinden kaynaklanıyorsa: Koddaki bu satırı
Kod:
trk = Cells(x + 1, 1) & "'"
bununla değiştirmeniz yeterli olacaktır.
Kod:
trk = Cells(x + 1, 1) & "'" & ",'" & ing
 
Hocam çok teşekkür ederim. Kodlar verilerin düzensizliğine ve karışıklığına rağmen mükemmel şekilde çalıştı. İkinci kodda işime yaradı. Onuda başka bir projemde kullanacağım. Büyük uğraş ve emeklerden kurtardınız beni. Allah razı olsun.
 
Geri
Üst