• DİKKAT

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

"Name" Tanımını Notepad Dosyasından Yapmak

Katılım
26 Ocak 2007
Mesajlar
4,625
Excel Vers. ve Dili
Ofis 2016
Merhaba arkadaşlar. NAME tanımını Ekle > Ad > Tanımla menüsünde değil de Notepad veya benzeri bir excel dışı bir dosyaya yapmak mümkün mü ?
 
Mümkün.... ama, çok az bilgi vermişiniz.
 
Sayın Haluk ilginiz için çok teşekkür ederim. Örnek olarak bir dosya ekledim. Bu dosya içinde örnek olsun diye FIYAT adı ile bir Name tanımı var. Bu Name oluşturan formülasyonu excel dışında bir text dosyasından alması veya kopyalaması mümkün mü ?

=DEĞİŞTİR(DÜŞEYARA(YERİNEKOY(KIRP(Sayfa1!A2&Sayfa1!B2);" ";);YERİNEKOY('FIYAT LISTESI'!$A$2:$A$20&'FIYAT LISTESI'!$B$2:$B$20:'FIYAT LISTESI'!$C$2:$C$20;" ";);2;YANLIŞ);1;UZUNLUK(YERİNEKOY(KIRP(Sayfa1!A2);" ";));"")
 

Ekli dosyalar

Sayın Haluk ilginiz için çok teşekkür ederim. Örnek olarak bir dosya ekledim. Bu dosya içinde örnek olsun diye FIYAT adı ile bir Name tanımı var. Bu Name oluşturan formülasyonu excel dışında bir text dosyasından alması veya kopyalaması mümkün mü ?

=DEĞİŞTİR(DÜŞEYARA(YERİNEKOY(KIRP(Sayfa1!A2&Sayfa1!B2);" ";);YERİNEKOY('FIYAT LISTESI'!$A$2:$A$20&'FIYAT LISTESI'!$B$2:$B$20:'FIYAT LISTESI'!$C$2:$C$20;" ";);2;YANLIŞ);1;UZUNLUK(YERİNEKOY(KIRP(Sayfa1!A2);" ";));"")

Doğru anladıysam; Makro kaydet ile elde edilen aşağıdaki kodlar, C:\nn bir text dosyasında kayıtlı olan formülünüzü nn adı altında oluşturuyor.

Sub Macro2()


'
With ActiveSheet.QueryTables.Add(Connection:="TEXT;C:\nn.txt", Destination _
:=Range("I8"))
.FieldNames = True
.RowNumbers = False
.FillAdjacentFormulas = False
.PreserveFormatting = True
.RefreshOnFileOpen = False
.RefreshStyle = xlInsertDeleteCells
.SavePassword = False
.SaveData = True
.AdjustColumnWidth = True
.RefreshPeriod = 0
.TextFilePromptOnRefresh = False
.TextFilePlatform = 857
.TextFileStartRow = 1
.TextFileParseType = xlDelimited
.TextFileTextQualifier = xlTextQualifierDoubleQuote
.TextFileConsecutiveDelimiter = False
.TextFileTabDelimiter = False
.TextFileSemicolonDelimiter = False
.TextFileCommaDelimiter = False
.TextFileSpaceDelimiter = False
.TextFileColumnDataTypes = Array(1)
.TextFileTrailingMinusNumbers = True
.Refresh BackgroundQuery:=False
End With
Range("I8").Select
ActiveWorkbook.Names.Add Name:="nn", RefersToR1C1:= _
"=REPLACE(VLOOKUP(SUBSTITUTE(TRIM(Sayfa1!R[4]C[-4]&Sayfa1!R[4]C[-3]),"" "",),SUBSTITUTE('FIYAT LISTESI'!R2C1:R20C1&'FIYAT LISTESI'!R2C2:R20C2:'FIYAT LISTESI'!R2C3:R20C3,"" "",),2,FALSE),1,LEN(SUBSTITUTE(TRIM(Sayfa1!R[4]C[-4]),"" "",)),"""")"
ActiveWorkbook.Names.Add Name:="nn", RefersToR1C1:= _
"=REPLACE(VLOOKUP(SUBSTITUTE(TRIM(Sayfa1!R[4]C[-4]&Sayfa1!R[4]C[-3]),"" "",),SUBSTITUTE('FIYAT LISTESI'!R2C1:R20C1&'FIYAT LISTESI'!R2C2:R20C2:'FIYAT LISTESI'!R2C3:R20C3,"" "",),2,FALSE),1,LEN(SUBSTITUTE(TRIM(Sayfa1!R[4]C[-4]),"" "",)),"""")"
Selection.ClearContents
End Sub



.
 
Sayın yurttas, ilginize çok teşekkür ederim. Tahminimce sizin yazmış olduğunuz kodu biraz revize edince tam olarak çözüm oluşacak. Aşağıda formülasyonun C:\ altındaki nn.txt dosyasında olduğunu varsayarsak, makro kodu bu formülasyonun FIYAT adı ile Name alanına tanımlamak mümkün olur mu ?

"=REPLACE(VLOOKUP(SUBSTITUTE(TRIM(Sayfa1!R[4]C[-4]&Sayfa1!R[4]C[-3]),"" "",),SUBSTITUTE('FIYAT LISTESI'!R2C1:R20C1&'FIYAT LISTESI'!R2C2:R20C2:'FIYAT LISTESI'!R2C3:R20C3,"" "",),2,FALSE),1,LEN(SUBSTITUTE(TRIM(Sayfa1!R[4]C[-4]),"" "",)),"""")"
 
...

ActiveWorkbook.Names.Add Name:="FIYAT", RefersToR1C1:= _
"=REPLACE(VLOOKUP(SUBSTITUTE(TRIM(Sayfa1!R[4]C[-4]&Sayfa1!R[4]C[-3]),"" "",),SUBSTITUTE('FIYAT LISTESI'!R2C1:R20C1&'FIYAT LISTESI'!R2C2:R20C2:'FIYAT LISTESI'!R2C3:R20C3,"" "",),2,FALSE),1,LEN(SUBSTITUTE(TRIM(Sayfa1!R[4]C[-4]),"" "",)),"""")"

şeklinde deneyin.

.
 
Sayın yurttas. Formülasyonun makro kodunun içinde olmayıp, nn.txt dosyasından kopyalanması mümkün mü ?
 
Geri
Üst