• DİKKAT

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

Txt dosyasını Excele aktarırken belli verileri ayıklama

  • Konbuyu başlatan Konbuyu başlatan u.L.a.s
  • Başlangıç tarihi Başlangıç tarihi
Katılım
8 Eylül 2008
Mesajlar
950
Excel Vers. ve Dili
2016 İngilizce
Merhabalar

Aşağıdaki linkte bir txt dosya var. Bu txt dosyasını Excel e aktarırken txt içerisindeki bütün verileri aktarıyorsunuz. Fakat ben istiyorum ki bu txt dosyasında ben işime yarayanları alabileyim.

Ekteki txt dosyasında benim işime yarayan satırlar aşağıdaki gibi rakamla başlayan satırlardır. diğer verileri ise excele aktarmasın istiyorum. Hatta aktardıktan sonrada bunu tek sütuna alıyoruz ya. bu sütunu Text To columns yani metni sütunlara dönüştür yaparak 4 parçaya bölsün.

yani
1. sütunda ilk baştaki rakam olacak
2. sütunda 0022.bb77.bb44 verisi olacak
3. sütunda DYNAMIC yazan verinin olduğu sütun olacak
4- sütunda ise Gi0/2 gibi verilerin olduğu veriler olacak

Konu huusunda yardımlarınızı rica ediyorum

Teşekkürler

Kod:
   1    0022.bb77.bb44    DYNAMIC     Gi0/2
   1    0022.bb77.bb44    DYNAMIC     Fa0/24
   1    0022.bb77.bb44    STATIC      Fa0/18 
   2    0022.bb77.bb44    DYNAMIC     Gi0/2
   2    0022.bb77.bb44    DYNAMIC     Fa0/2
  10    0022.bb77.bb44    DYNAMIC     Fa0/2
  10    0022.bb77.bb44    DYNAMIC     Fa0/12
  10    0022.bb77.bb44    DYNAMIC     Gi0/2
  11    0022.bb77.bb44    DYNAMIC     Fa0/2
  11    0022.bb77.bb44    DYNAMIC     Fa0/13
  11    0022.bb77.bb44    DYNAMIC     Fa0/13
  12    0022.bb77.bb44    DYNAMIC     Fa0/2
  12    0022.bb77.bb44    DYNAMIC     Fa0/12

http://s2.dosya.tc/server/qKeRlO/Err.txt.html
 
Son düzenleme:
omer.baran link için teşekkürler.

inceledim fakat işin içinden çıkamadım.

değerli yardımlarınızı rica ediyorum
 
Son düzenleme:
Aşağıdaki kodu bir modüle kopyalayıp çalıştırırsanız işinizi görür
Kod:
Sub Aktar()
    ChDir ThisWorkbook.Path
    dosyaadi = Application.GetOpenFilename("Text Files (*.txt), *.txt", Title:="Dosya Seçiniz")
    If dosyaadi = False Then
        MsgBox "Aktarılacak dosya Dosya seçilmedi", , "DİKKAT"
        Exit Sub
    End If
Worksheets("Sayfa1").Select
Rows("3:9999").Select
Selection.ClearContents
Range("B3").Select
Open dosyaadi For Input As #1

i = 3
For j = 1 To 1
    Do While Not EOF(1)
        Line Input #1, Textline
        If Mid(Textline, 42, 1) = "/" Then
            Vlan = Mid(Textline, 3, 2)
            Mac_Add = Mid(Textline, 8, 14)
            Tipi = Mid(Textline, 27, 8)
            Ports = Mid(Textline, 38, 8)
            Cells(i, 2).Value = Vlan
            Cells(i, 3).Value = Mac_Add
            Cells(i, 4).Value = Tipi
            Cells(i, 5).Value = Ports
            i = i + 1
        End If
    Loop
    Close #1
Next j

End Sub
 
Usta07 Emeğine bilgine sağlık çok güzel olmuş.

Fakat ufak bir sorun var.

Oda şu

txt olan verileri excele alıp sütunlara dağıttıktan sonra özellikle

Fa0/xx - Gi0/xx verilerinin Left veya right kısımlarında boşluk oluyor. Bu boşluklar olmasın mümkünse. Yani birebir Fa0/xx verisi satıra yerleşsin.

Edit: Unutmadan şunuda aktarayım. aktaracağım Txt dosya zaten belli bir dizin altından bellir bir dosya. yani illaki dosya gözat dosya seç işlemi olmasına gerek yok.

Yol olarak "C:\SwitchPortSecurity\Err.txt" olarak yazılabilir
 
Son düzenleme:
Hocam tamam dosya yolu kısmınıda diğer boşluk olmama kısmınıda hallettim.

dosyaadi = "C:\SwitchPortSecurity\Err.txt" olarak düzeltip if li sorgulama kısmını kaldırdım.

Çok çok teşekkür ederim bilgin ve yardımların için
 
Son düzenleme:
@usta07 üstadım

aşağıda bir tane daha txt dosyam var. diğer dosyadan farklı.

bu dosya için başka bir sheette senin verdiğin kodları revize ederek uygulamaya çalıştım ama beceremedim.,

Bu txt dosyasında yapmak istediğim tek birşey var.

Ekteki dosyadan sadece aşağıdaki verileri alıp A sütununa yerleştirecek.

ayrıca diğeri gibi sütunlara bölme işi yok. sadece bu verileri A sütununa alsın.

Kod:
Fa0/1                        connected    trunk      a-full  a-100 10/100BaseTX
Fa0/2                        connected    trunk      a-full  a-100 10/100BaseTX
Fa0/3                        connected    1          a-full  a-100 10/100BaseTX
Fa0/4                        connected    1          a-full  a-100 10/100BaseTX
Fa0/5                        notconnect   1            auto   auto 10/100BaseTX
Fa0/6                        notconnect   1            auto   auto 10/100BaseTX
Fa0/7                        connected    1          a-full  a-100 10/100BaseTX
Fa0/8                        notconnect   1            auto   auto 10/100BaseTX
Fa0/9                        notconnect   1            auto   auto 10/100BaseTX
Fa0/10                       notconnect   1            auto   auto 10/100BaseTX
Fa0/11                       notconnect   1            auto   auto 10/100BaseTX
Fa0/12                       connected    trunk      a-full  a-100 10/100BaseTX
Fa0/13                       connected    trunk      a-full  a-100 10/100BaseTX
Fa0/14                       notconnect   1            auto   auto 10/100BaseTX
Fa0/15                       notconnect   1            auto   auto 10/100BaseTX
Fa0/16                       notconnect   1            auto   auto 10/100BaseTX
Fa0/17                       notconnect   1            auto   auto 10/100BaseTX
Fa0/18                       connected    1          a-full  a-100 10/100BaseTX
Fa0/19                       notconnect   1            auto   auto 10/100BaseTX
Fa0/20                       notconnect   1            auto   auto 10/100BaseTX
Fa0/21                       connected    1          a-full  a-100 10/100BaseTX
Fa0/22                       notconnect   1            auto   auto 10/100BaseTX
Fa0/23                       connected    1          a-full  a-100 10/100BaseTX
Fa0/24                       connected    trunk      a-full  a-100 10/100BaseTX
Gi0/1                         connected    trunk      a-full  a-100 0/100/1000BaseTX
Gi0/2                         connected    trunk      a-full a-1000 0/100/1000BaseTX

http://s2.dosya.tc/server/sZbgmn/Err.txt.html
 
Son düzenleme:
Kod:
Sub Aktar1()
Worksheets("Sayfa1").Select
Rows("3:9999").Select
Selection.ClearContents
Range("A3").Select
Open "C:\SwitchPortSecurity\Err.txt" For Input As #1
i = 3
For j = 1 To 1
    Do While Not EOF(1)
        Line Input #1, Textline
        If Mid(Textline, 4, 1) = "/" Then
            All = Mid(Textline, 1, 200)
            Cells(i, 1).Value = All
            i = i + 1
        End If
    Loop
    Close #1
Next j

End Sub
 
Üstadım bilgine emeğine sağlık

yardımların için çok teşekkür ederim.

Hemşeriminde yardımcı olması ayrıca sevindirdi beni. :)

Antalyaya tüm antalyalılara sevgiler
 
Geri
Üst