Sıkıntını şimdi anladım.. senin işin metin fonksiyonlarıyla... EXCELL de metin metin ara metin birleştir gibi fonksiyonlar vardı sanırım bu gibi işler için.. aratırsan bir sürü rnek bulursun... ben de çok bilgili değilim de ilikin bir algoritma geliştirmelisin kafanda şu an pek müsait değilim belki akşam biraz bakarım.. Din Kitaplarını Okuyup Anlayana Ateist, Okuyup Anlamayanlara "dindar" denir... Nikola TESLA.. ben mi? Ne okurum ne anlarım... Kendi kendime de uyuz oluyorum ama olamıyorum.. "Ama efsaneyi çıkarıp atarsan ve yaptıkları eylemlere bakarsan... .. Jedi'ların mirası başarısızlıktır. İkiyüzlülüktür, kibirdir."

bunu zaten excelden yazıyorsun.. vb indirmen gerk yok :)) Din Kitaplarını Okuyup Anlayana Ateist, Okuyup Anlamayanlara "dindar" denir... Nikola TESLA.. ben mi? Ne okurum ne anlarım... Kendi kendime de uyuz oluyorum ama olamıyorum.. "Ama efsaneyi çıkarıp atarsan ve yaptıkları eylemlere bakarsan... .. Jedi'ların mirası başarısızlıktır. İkiyüzlülüktür, kibirdir."

Selam, bu işi yapan basit bir exe yaptım ncelikle bir kaç uyarıda bulunayım. programın çalışması için framework 4.0 ın kurulu olması gerek bilgisayarında excel dosyasının A1 ve B1 hücreleri header olarak grülüyor. O yüzden o iki hücreye rastgele bir şeyler yaz ##yolladığın rnek biraz sakıncalı mesela bir alan bu şekilde belirtilmiş /trunk/SCCB/ProductLibrary/Code/db ama B dosyasında db/ şeklinde yazılı. dikkat edersen /db ile db/ arsında fark var. ben B dosyasındaki hücrelerin A dosyasındaki ilk hücrelerde olup olmadığına bakıyorum o yüzden B nin kesinlikle A nın içinde olması gerek. db/ gibi bir ifade yerine db olması yada /db olması gerekli. Bu durumlarda dosyayı es geçer sonuçta beni tanımıyorsunuz o yüzden dosyayı virus taramasından geçirdim. sha burada SHA256: 9547e18ce7e39f5b20e07e535d1572cf121c3956f2829d3f7c253a0dd6d51866 File name: ExcelKarsilastirma. exe Detection ratio: 0 / 42 Analysis date: 2012-06-18 22:33:35 UTC ( 0 dakika ago ) https://www.virustotal.com/file/9547e18ce7e39f5b20e07e535d1572cf121c3956f2829d3f7c253a0dd6d51866/analysis/1340058815/ dosyayı karşılaştırabilirsiniz. Ayrıca exeyi her hangi bir obfuscating işlemi gerçekleştirmedim kodlarına bakabilrisiniz, isterseniz projeyi de verebilirim.. buradan indirebilirsin http://depositfiles.com/files/4kfv03114 rarın içine rnek dosya1. xls ve dosya2. xls koydum. kayıt etmek istediğin excel dosyası var olması gerekli. yoksa kendisi oluşturmuyor. Acele ile yaptım hatalar olabilir.. umarım hata çıkmaz.. dosyanın yanındaki dll exceli linq ile kullanmayla alakalı :) aslında boşuna uğraştırdı beni de bi kere ekledim okuma işlemini yaptım, baktım kayıt işlemi yok :) kayıtı da eski yntemle yaptım.. kolay gelsin Ülkesini Seven Her Türk Vatandasi, Ülkesinin Sessiz Istilasi'na karsi durmak zorunda.

Birşey sormak istiyorum.. veri bloklarında ortak dizi parçalarında ilk iki karakter yada üç mutlaka ortak mı? Eğer yle ise ortaklık koşulunu sağlayan ve bunu ayıklamayı sağlayan algoritma epey basitleşecek... Din Kitaplarını Okuyup Anlayana Ateist, Okuyup Anlamayanlara "dindar" denir... Nikola TESLA.. ben mi? Ne okurum ne anlarım... Kendi kendime de uyuz oluyorum ama olamıyorum.. "Ama efsaneyi çıkarıp atarsan ve yaptıkları eylemlere bakarsan... .. Jedi'ların mirası başarısızlıktır. İkiyüzlülüktür, kibirdir."

Allak bullak oldu kafa :/ since 2005 // tbt

şyle mümkün olabilir, hersatırdaki verilerin içierisinde bulunan ortak bir ID yada harften sorgulanırsa satırlar yan yana gelecektir diye düşünüyorum. Yapmadıklarınıza pişman olmaktansa, Yaptıklarınıza pişman olun... Yapın pişman olun, yada yapmayın yine pişman olun.

: bunu zaten excelden yazıyorsun.. vb indirmen gerk yok :)) ha vb için yazıcam demiştin ya onun için fonksiyon verdin zannettim :) tamam hocam deniyorum hemen since 2005 // tbt

B dpsyasındaki bilgi sayısı çok fazla ise oldukça uzun bir eğer formülü kullanman gerek. Formülü yazdıktan sonra sabit bilgiler için başına dolar işareti koyup formüllü hücreyi sağ alttan aşağı doğru çekmen yeterli. Makro falanda yazılacak olsa algoritması aşağı yukarı byle olurdu.

Yazdığım C programı küçük dosyalarda işe yarıyor fakat içinde çok satır olan dosyalarda sorun çıkartıyor. Bu akşama kadar halletmem şart büyük sıkıntı olmaya başladı iyice benim için. since 2005 // tbt

@ltcelik, src/core/util/Array. phpDeveloped buradaki developed ayrı hücrede bunu gzden kaçırma.. vba ile de yapılabilir aslında. vba biliyorsan onunla uğraşabilrisin. excelden çzmek zor gibi grünüyor. en azından ben beceremem Ülkesini Seven Her Türk Vatandasi, Ülkesinin Sessiz Istilasi'na karsi durmak zorunda.

excel dosyası üzerinden rneklersen daha anlaşılır olacaktır.

karşılayan derken, a dosyasındaki herhangibir satırdaki yazıyı b dosyasında herkangibir satırdan otomatik buludurup yanına getirtebilrim. Yapmadıklarınıza pişman olmaktansa, Yaptıklarınıza pişman olun... Yapın pişman olun, yada yapmayın yine pişman olun.

Bir rnek vermem gerekirse; A dosyası: /trunk/SCCB/ProductLibrary/Code/src/core/util/Array. php B dosyası: src/core/util/Array. phpDeveloped excel dosyalarındaki iki farklı bilgi bu şekilde hocam. since 2005 // tbt

temel oalrak excelde sorunu belli bir aşamaya getirdim fakat tabloda dngü çalışmadığı için elle müdahale ya da makro yazmak gerekiyor 6000 data olunca sıkıntı tabi... kullanıcı tanımlı bir function yazacam kısmetse... Din Kitaplarını Okuyup Anlayana Ateist, Okuyup Anlamayanlara "dindar" denir... Nikola TESLA.. ben mi? Ne okurum ne anlarım... Kendi kendime de uyuz oluyorum ama olamıyorum.. "Ama efsaneyi çıkarıp atarsan ve yaptıkları eylemlere bakarsan... .. Jedi'ların mirası başarısızlıktır. İkiyüzlülüktür, kibirdir."

Hala tam anlamış değilim ama uzun yoldan şyle yapılabilinir. Senin rneğine gre tüm hücrelerde bu ifade sabit "/trunk/SCCB/ProductLibrary/Code" bu ifadeden sonrasıda zaten karşılaştırılacak kısım. ctrl+H ile değiştir kısmında aranan kısmına bu ifade girilir yeni değer kısmı boş bırakılarak tümünü değiştire basılıp ilgili ifadeler silinir. Daha sonra "=Eğer" fonksiyonuyla karşılaştırma yapılarak yandaki hücreye sonuç yazdırılır. ilgili ifade yeniden yazılması gerekiyorsa "=birleştir" komutuyla yeniden yazdırılır. Biraz uzun oldu ama...

Şimdi soru aslında matematikteki kümeler konusu ile ilgili.. kümelerin kesişimi... şimdi iki tane dizimiz var.. bunlardan birincisi en az bir eleman içerir ikincisi en az sıfır... şimdi 1. dizi her hangi bir sayıda 2. dizi de herhangi bir sayıda eleman içersin... bunların kesişim kümesinin eleman sayısı en fazla küçük kümenin eleman sayısı kadar olabilir.. yani senin ikinci dizi aynen birinci dizinin sonuda mevcut olabilir... birinci küme küçükse birnci küme aynen ikinci kümenin başında mevcut olabilir... ncelikle bir max eleman sayısı tanımlıycaz.. bu yukarıda anlatttığım şey ikinci küme boş küme ise burdan komut sonuna atlatıcaz ( hiç bir işlem yapmıyca z yani başlangıçta bir iddiamız olacak diycez ki bu iki kümeden birsi diğerinin alt kümesidir (tüm elemanlar diğerinde mevcuttur 1. aqwertyvbnca 2. vbnca gibi ( burda nmax 5 olur) sonra bu iddamızın doğruluğunu sınatacağız doğruysa asıl işlemi yaptıracaz nermemiz yanlışsa nmax-1 elemanda sınaması yapacaaz herhangi bir nmax-i dğerinde eşleşme yakaldığımızda ise kinci dizide nmax-i den sonraki elemanları kesip 1. ye ekliycez ve sonuç diziyi oluşturacaz... Şu soru aklına gelebilir.. niçin kafadan tüm elemanların kesiştiğini varsaydın.. eğer en küçük kesişim kümesinden başlasaydık yani 1 den sonra 2 sonra 3... kesişme var mı diye sorgulamak zorunda kalacaktık tekrarlı elemnlar da varsa bu algoritmayı karmaşık ve yanlış çalışır bir duruma da getirecekti.. biz enyüksek kesişimden başlayınca tüm bunlardan kurtulmuş oluruz... Din Kitaplarını Okuyup Anlayana Ateist, Okuyup Anlamayanlara "dindar" denir... Nikola TESLA.. ben mi? Ne okurum ne anlarım... Kendi kendime de uyuz oluyorum ama olamıyorum.. "Ama efsaneyi çıkarıp atarsan ve yaptıkları eylemlere bakarsan... .. Jedi'ların mirası başarısızlıktır. İkiyüzlülüktür, kibirdir."

Burdaki sıkıntı yani asıl konumuz 1. bloktaki dzinin son kısmıyla 2. bloktaki dzinin baş kısmında ortak dizi parçasının var olup olmadığını excel komutlarıyla "tesbit etmek".. bu tesbit yapıldığı an zaten excelin metin fonksiyonları işi çok basit halleder Din Kitaplarını Okuyup Anlayana Ateist, Okuyup Anlamayanlara "dindar" denir... Nikola TESLA.. ben mi? Ne okurum ne anlarım... Kendi kendime de uyuz oluyorum ama olamıyorum.. "Ama efsaneyi çıkarıp atarsan ve yaptıkları eylemlere bakarsan... .. Jedi'ların mirası başarısızlıktır. İkiyüzlülüktür, kibirdir."

VB kodu yazmadan olmayacak gibi... Din Kitaplarını Okuyup Anlayana Ateist, Okuyup Anlamayanlara "dindar" denir... Nikola TESLA.. ben mi? Ne okurum ne anlarım... Kendi kendime de uyuz oluyorum ama olamıyorum.. "Ama efsaneyi çıkarıp atarsan ve yaptıkları eylemlere bakarsan... .. Jedi'ların mirası başarısızlıktır. İkiyüzlülüktür, kibirdir."

umutla bekliyorum hocam :D since 2005 // tbt

: al bakalım Function kaynastir As Stringl1 = Len l2 = Len If l1 < l2 Then nmax = l1 Else nmax = l2nmax = nFor i = n To 0 Step -1 ' burda sondaki i sayıda karakterin ortak olduğunu iddia ediyoruz doğrysa dngüden çıkıp değeri ddürüyoruzIf Right(l1, i) = Left(l2, i) Then kaynastir = soldizi + Right(sagdizi, (l2 - i))GoTo cikNext icik:kaynastir = kaynastir End Function bu fonksiyon birinci diziye ikinci dizinin ortak olmayan kısmını ekliyor hiç ortaklık yoksa doğal olarak iki diziyi birleştirmiş oluyor.. eğer bunu istemiyorsan yani ortaklık yoksa birleşme de yok diyosan bunu kontrol eden bir fonksiyon değişkeni ve birkaç satır kod da yazabilirsin.. bu fonksiyon ncelikle yazılı olduğu kitapta çalışır diye biliyorum fakat mutlaka bilgisayara public edilebilir excel bilgim o kadar yok.. Hocam staj yaptığım yerde exe uzantılı dosyaları indirmeye izin yok derleyici de yok burada. Akşam geçince hemen denicem çok teşekkür ediyorum since 2005 // tbt

doğru anladıysam, doğru yardımcı olabildiğime inandığım bir video hazırladım. anlatım da içinde mevcut. http://puu.sh/CgJJ VirusTotal: https://www.virustotal.com/file/a25b5964b3f65cea87bcd9ba9744323eb04ebf70f9d52edb5f2a403bf0731505/analysis/1340182044/ Edit: real_agabey 'in dediğini demişim sanırım, farketmedim. Ayrıca bunun için notepad++ programına da gerek yokta işte, farklı yolları denerken onun üzerinde çalışınca yle çekiverdim.

: karşılayan derken, a dosyasındaki herhangibir satırdaki yazıyı b dosyasında herkangibir satırdan otomatik buludurup yanına getirtebilrim. Hocam işte rnekte verdiğim gibi A dosyasında /trunk/SCCB/ProductLibrary/Code/src/core/data_access/Limit. php var. B dosyasında 1. sütun 2. sütun src/core/data_access/Limit. php Path şeklinde. Benim amacım A dosyasındaki uyuşan bilgilerin yanına yeni bir sütun açıp o sütuna B dosyasındaki bilgiyi eklemek. rneğin verdiğim bu rnekte Path yazdırmak. Yani son istediğim şekil şyle; 1. sütun 2. sütun /trunk/SCCB/ProductLibrary/Code/src/core/data_access/Limit. php Path since 2005 // tbt

düşey ara fonksiyonu işine yarayabilir Din Kitaplarını Okuyup Anlayana Ateist, Okuyup Anlamayanlara "dindar" denir... Nikola TESLA.. ben mi? Ne okurum ne anlarım... Kendi kendime de uyuz oluyorum ama olamıyorum.. "Ama efsaneyi çıkarıp atarsan ve yaptıkları eylemlere bakarsan... .. Jedi'ların mirası başarısızlıktır. İkiyüzlülüktür, kibirdir."

Hacılar elimde iki adet excel dosyası bulunmakta. Birinde 1 sütun, tekinde 2 sütun bilgi bulunmaktadır. A dosyasındaki sütun ile B dosyasındaki bir sütundaki bilgiler uyuşmaktadır. Benim amacım B dosyasında ikinci sütundaki bilgileri A dosyasında yeni bir sütun açıp, ilk sütunda onu karşılayan verinin yanına taşımak. rneğin;A dosyasındaki bilgi/trunk/SCCB/ProductLibrary/Code/src/conf/var. php/trunk/SCCB/ProductLibrary/Code/src/core/data_access/Criteria. php/trunk/SCCB/ProductLibrary/Code/src/core/data_access/Limit. phpB dosyasındaki bilgisrc/conf/var. php Developedsrc/core/data_access/Criteria. php Developedsrc/core/data_access/Limit. php Pathyani B dosyasındaki bilgiler A dosyasında /trunk/SCCB/ProductLibrary/Code/ satırından sonra gelen bilgiler, bazı bilgilerin karşılığı B dosyasında yok onlar da boş kalmalı. Burada benim oluşturmak istediğim yeni dosyada/trunk/SCCB/ProductLibrary/Code/src/conf/var. php Developed/trunk/SCCB/ProductLibrary/Code/src/core/data_access/Criteria. php Developed/trunk/SCCB/ProductLibrary/Code/src/core/data_access/Limit. php Pathyazmalı... Elimde bu şekilde yaklaşık 6000 veri olduğu için bu olayı bir algoritma ile çzmem şart. Derdimi anlatabildim mi pek emin değilim ama yardım edebilecek birileri çıkarsa inanılmaz makbule geçicek. since 2005 // tbt

: vlookup komutu ile cok hizli yaparsin. İng sürümse "vlookup", türkçe sürümse "düşeyara" formülü

: düşey ara fonksiyonu işine yarayabilir Hocam yarıyordur da nasıl yapıldığını bilmiyorum. =VLOOKUP(A1;A1:B9;2;FALSE) tamam bu derecede biliyorum ama benim olayda işin içine string içinde string aramaya benzer bir olay giriyor. + 6000 civarı kelime için nasıl uyarlayacağım hakkında en ufak bir fikrim yok. since 2005 // tbt

Kendime bir C programı yazarak halletmeye çalıştım. 1. txt ve 2. txt içine gerekli bilgileri attım sonucu 3. txt olarak alabiliyorum. Ama bazı eşleşmeyen sonuçlar olabiliyor, bu sonuçlar programı patlattı. Else in içini doğru şekilde nasıl yazmam gerektiğini bilemedim. edit/ rnek olarak 1. txt içine C:\ceylin\hasan\deneme3. php C:\ceylin\hasan\deneme. php C:\ceylin\hasan\deneme2. php C:\ceylin\hasan\deneme1. php C:\ceylin\hasan\deneme4. php ve 2. txt içine hasan\deneme2. php N/Aaaa hasan\deneme1. php Path hasan\deneme4. php N/A hasan\deneme. php Path hasan\deneme3. php Developed yazarak sonuçları grebilirsiniz. #include #include #include #include int main { FILE dosya1, dosya2, dosya3; char ilk , ikinci , son , gikinci ; int i; dosya1=fopen("D:\\1. txt","r"); dosya2=fopen("D:\\2. txt","r"); dosya3=fopen("D:\\3. txt","a+"); while(! feof(dosya2)){ fscanf(dosya2,"%s%s", ilk, ikinci); while(! feof(dosya1)){ fscanf(dosya1,"%s", son); if(strstr != NULL ) //if }//whiledosya1 } //whiledosya2 fclose(dosya3); fclose(dosya1); fclose(dosya2); getch ; return 0; } since 2005 // tbt

Hocam hemen deniyorum eline sağlık çok makbule geçecek since 2005 // tbt

al bakalım Function kaynastir As Stringl1 = Len l2 = Len If l1 < l2 Then nmax = l1 Else nmax = l2nmax = nFor i = n To 0 Step -1 ' burda sondaki i sayıda karakterin ortak olduğunu iddia ediyoruz doğrysa dngüden çıkıp değeri ddürüyoruzIf Right(l1, i) = Left(l2, i) Then kaynastir = soldizi + Right(sagdizi, (l2 - i))GoTo cikNext icik:kaynastir = kaynastir End Function bu fonksiyon birinci diziye ikinci dizinin ortak olmayan kısmını ekliyor hiç ortaklık yoksa doğal olarak iki diziyi birleştirmiş oluyor.. eğer bunu istemiyorsan yani ortaklık yoksa birleşme de yok diyosan bunu kontrol eden bir fonksiyon değişkeni ve birkaç satır kod da yazabilirsin.. bu fonksiyon ncelikle yazılı olduğu kitapta çalışır diye biliyorum fakat mutlaka bilgisayara public edilebilir excel bilgim o kadar yok.. Din Kitaplarını Okuyup Anlayana Ateist, Okuyup Anlamayanlara "dindar" denir... Nikola TESLA.. ben mi? Ne okurum ne anlarım... Kendi kendime de uyuz oluyorum ama olamıyorum.. "Ama efsaneyi çıkarıp atarsan ve yaptıkları eylemlere bakarsan... .. Jedi'ların mirası başarısızlıktır. İkiyüzlülüktür, kibirdir."

vlookup komutu ile cok hizli yaparsin.

Evet hocam o yntem benim de aklıma geldi ama birleştir olayından haberim yoktu benim tabi. Peki bunu tüm satırlar için uygulama olayını nasıl yapmam gerekiyor? since 2005 // tbt

Hocam vlookup fonksiyonunu teknik olarak biliyorum ama bu işi yapabilecek kadar iyi değilim, vaktim de sınırlı direk fonksiyon verebilirseniz daha iyi olur . Aşağı linki paylaşıyorum. Olay şu, B nin içindeki ilk sütundaki bilgiler ile A nın içindeki ilk sütundaki bilgiler karşılaştırılıyor ve sonuçta C şeklinde yeni bir dosya oluşturuluyor. Ama zorluk şu ki sütundaki bilgilerin sadece bir kısımdan sonraki yeri uyuşuyor tamamı değil. http://s2. dosya. tc/server16/Ai5KJn/Excel. rar.html since 2005 // tbt

: doğru anladıysam, doğru yardımcı olabildiğime inandığım bir video hazırladım. anlatım da içinde mevcut. http://puu.sh/CgJJ VirusTotal: https://www.virustotal.com/file/a25b5964b3f65cea87bcd9ba9744323eb04ebf70f9d52edb5f2a403bf0731505/analysis/1340182044/ Malesef tam olarak bu değil hocam, verdiğim rnek için doğru olmuş ama bendeki dosyalar biraz daha kapsamlı. Ufak bir pm attım, teşekkür ediyorum since 2005 // tbt

ufak bir hata var arkadaşlar nmax=n yazmışım n=nmax olmalı Din Kitaplarını Okuyup Anlayana Ateist, Okuyup Anlamayanlara "dindar" denir... Nikola TESLA.. ben mi? Ne okurum ne anlarım... Kendi kendime de uyuz oluyorum ama olamıyorum.. "Ama efsaneyi çıkarıp atarsan ve yaptıkları eylemlere bakarsan... .. Jedi'ların mirası başarısızlıktır. İkiyüzlülüktür, kibirdir."