• DİKKAT

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

Formülü vba da yazma.

  • Konbuyu başlatan Konbuyu başlatan hmtstc
  • Başlangıç tarihi Başlangıç tarihi
Katılım
20 Şubat 2014
Mesajlar
315
Excel Vers. ve Dili
Excel 2016 - Türkçe
Arkadaşlar merhaba,

uzun uğraşlar sonucunda aşağıdaki formül ile istediğim sonucu aldım.
Ancak bu formülü makroda yazdırmayı beceremedim. kayıt seçeneği ile denediğim de de olmadı bir türlü çıkamadım içerisinden.

Bir de formül çok uzun duruyordu. anlaşılır olsun diye böyle yaptım. sonlarına da & _ işaretlerini koydum bu satır devam ediyor aşağıdan devam et anlamına mı geliyor ? gelmiyorsa nasıl bir şey yazmam lazım alt satır formülün devamı uyarısı vermem için.

istiyorum ki makro çalışırken I2 hücresine aşağıdaki formülü yazsın.
Yardımcı olabilecek arkadaşlar nerde hata yaptığımı da söylerse çok memnun olurum balıktan öte balık tutmayı öğrenmem lazım :)

Şimdiden teşekkürler


veri alacağı hücredeki metin
6W-AIRBAG-KABLOLU KEMER-MANUEL LOMBAR-ISITICI-KOLÇAK-GSX
Sub Makro2()
'
a = "=EĞER(EHATALIYSA(EĞER(BUL(""6W"";D2);PARÇAAL(D2;BUL(""6W"";D2);""2"");""""));"""";EĞER(BUL(""6W"";D2);PARÇAAL(D2;BUL(""6W"";D2);""2"")))"
b = "&EĞER(EHATALIYSA(EĞER(BUL(""4W"";D2);PARÇAAL(D2;BUL(""4W"";D2);""2"");""""));"""";EĞER(BUL(""4W"";D2);PARÇAAL(D2;BUL(""4W"";D2);""2"")))"
c = "&EĞER(EHATALIYSA(EĞER(BUL(""AIRBAG"";D2);PARÇAAL(D2;BUL(""AIRBAG"";D2);""6"");""""));"""";EĞER(BUL(""AIRBAG"";D2);PARÇAAL(D2;BUL(""AIRBAG"";D2);""6"")))"
d = "&EĞER(EHATALIYSA(EĞER(BUL(""ISITICI"";D2);PARÇAAL(D2;BUL(""ISITICI"";D2);""7"");""""));"""";EĞER(BUL(""ISITICI"";D2);PARÇAAL(D2;BUL(""ISITICI"";D2);""7"")))"
e = "&EĞER(EHATALIYSA(EĞER(BUL(""PANC"";D2);PARÇAAL(D2;BUL(""PANC"";D2);""4"");""""));"""";EĞER(BUL(""PANC"";D2);PARÇAAL(D2;BUL(""PANC"";D2);""4"")))"
f = "&EĞER(EHATALIYSA(EĞER(BUL(""BF"";D2);PARÇAAL(D2;BUL(""BF"";D2);""2"");""""));"""";EĞER(BUL(""BF"";D2);PARÇAAL(D2;BUL(""BF"";D2);""2"")))"
g = "&EĞER(EHATALIYSA(EĞER(BUL(""SABİT"";D2);PARÇAAL(D2;BUL(""SABİT"";D2);""5"");""""));"""";EĞER(BUL(""SABİT"";D2);PARÇAAL(D2;BUL(""SABİT"";D2);""5"")))"
h = "&EĞER(EHATALIYSA(EĞER(BUL(""P.OGGETTI"";D2);PARÇAAL(D2;BUL(""P.OGGETTI"";D2);""9"");""""));"""";EĞER(BUL(""P.OGGETTI"";D2);PARÇAAL(D2;BUL(""P.OGGETTI"";D2);""9"")))"
j = "&EĞER(EHATALIYSA(EĞER(BUL(""TAVOLINO"";D2);PARÇAAL(D2;BUL(""TAVOLINO"";D2);""8"");""""));"""";EĞER(BUL(""TAVOLINO"";D2);PARÇAAL(D2;BUL(""TAVOLINO"";D2);""8"")))"
k = "&EĞER(EHATALIYSA(EĞER(BUL(""SCOMPARSA"";D2);PARÇAAL(D2;BUL(""SCOMPARSA"";D2);""9"");""""));"""";EĞER(BUL(""SCOMPARSA"";D2);PARÇAAL(D2;BUL(""SCOMPARSA"";D2);""9"")))"
'
m = a & b & c & d & e & f & g & h & j & k

' Cells(2, 9) hücresine uygun şekilde formül yazmam lazım. yukarıdaki tanımların hepsi yanyana bir formül oluşturuyor. ama ne rc ile ne de böyle çözemedim. RC[-5] r1c1 formülle kullandığımdaki veri aldığı hücre.

End Sub
 
Son düzenleme:
Merhaba,

Aşağıdaki mantıkla ilerleyin.
Ayrıca formüldeki parçaalı kullanmanıza gerek olmadığı için formülün genel mantığını değiştirmeden içeriğini de değiştirdim. Eski formülü kullanacaksanız bile vba da yazım mantığını aşağıdaki gibi düşünüp kendinize uyarlarsınız.

Kod:
Range("I2").Formula = "=IF(ISERROR(FIND(""6W"",D2)),"""",""DW"")&" _
                        & "IF(ISERROR(FIND(""4W"",D2)),"""",""4W"")&" _
                        & "IF(ISERROR(FIND(""AIRBAG"",D2)),"""",""AIRBAG"")"

.
 
Geri
Üst