• DİKKAT

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

Çözüldü Excelde Hücre Formatı Gereksiz Yere Değişiyor Yardım :(

Katılım
19 Ağustos 2017
Mesajlar
174
Excel Vers. ve Dili
2016 TR
Merhaba abiler :(
Kod:
Dim k1 As Workbook: Set k1 = Workbooks(ActiveWorkbook.Name)
Dim k1s1 As Worksheet: Set k1s1 = k1.Worksheets(ActiveSheet.Name)
Dim k2 As Workbook: Set k2 = Workbooks(ThisWorkbook.Name)
Dim k2s1 As Worksheet: Set k2s1 = k2.Worksheets("HM DATA")
ss = k1s1.Cells(65536, "A").End(xlUp).Row

k2s1.Range("A"1:A" & ss).Value = _
k1s1.Range("A"1:A" & ss).Value

Yukarıdaki kodda excelimin açmış olduğu farklı bir excel dosyasından a kolonunun benim excelimdeki HM DATA sayfasına aktarmaktayım.
Şöyle bir sorunum var
Bina kapı nolar geliyor misal "2/3" Bu kapı noyu alacağım data sayfamın hücre formatı tamamen metin olmasına rağmen excel bu hücrenin formatını değiştirerek "2/3/2019" olarak alıyor veya "2 A" bina numarasını saat olarak "02:02 AM" olarak aktarıyor bunu engelleyebilmek için ne yapabilirim bana yardımcı olabilecek birisi varmı ?
 
Aşağıdaki gibi denermisiniz.

Dim k1 As Workbook: Set k1 = Workbooks(ActiveWorkbook.Name)
Dim k1s1 As Worksheet: Set k1s1 = k1.Worksheets(ActiveSheet.Name)
Dim k2 As Workbook: Set k2 = Workbooks(ThisWorkbook.Name)
Dim k2s1 As Worksheet: Set k2s1 = k2.Worksheets("HM DATA")
ss = k1s1.Cells(65536, "A").End(xlUp).Row

k2s1.Range("A"1:A" & ss).Value = _
k1s1.Range("A"1:A" & ss).Value
k2s1.Select
Columns("A:A").Select
Selection.NumberFormat = "@"
Range("J8").Select
 
@yanginci34 Merhabalar tekrardan
eklediğiniz kodu şu şekilde düzelttim
k2s1.Columns("A:AI").NumberFormat = "@"
ve lakin şu şekilde bir problem var;


Tarihe dönüşen bina numaraları 457456 Gibi rakamlara Dönüşüyor
Bina numarasının rakamının sonu A ile veya P ile bitiyora misal 12 A, 9 P, 4 A saat şeklinde görünüyor sizin verdiğinz kod ise çalıştığında 0,254654 gibi rakamlar geride kalıyor. :(
 
Aşağıda kırmızı ile işaretli yerleri silip denermisiniz.

Dim k1 As Workbook: Set k1 = Workbooks(ActiveWorkbook.Name)
Dim k1s1 As Worksheet: Set k1s1 = k1.Worksheets(ActiveSheet.Name)
Dim k2 As Workbook: Set k2 = Workbooks(ThisWorkbook.Name)
Dim k2s1 As Worksheet: Set k2s1 = k2.Worksheets("HM DATA")
ss = k1s1.Cells(65536, "A").End(xlUp).Row

k2s1.Range("A"1:A" & ss).Value = _
k1s1.Range("A"1:A" & ss).Value
 
Kopyala değerleri yapıştır şeklinde aktarım yapmayı deneyiniz.
 
@Korhan Ayhan @yanginci34
Abiler Merhabalar.
Benimde aklımdan son çare kopyala yapıştır geçiryordu ama durumu çözmeyi başardım.
k2s1.Range("A"1:A" & ss).Value = _
k1s1.Range("A"1:A" & ss).Value
Yanginci34 Abi Kırmızı alanları silerek denememi önermşti bunu denemiştim ve verileri aktarmıyordu fakat veri kaynağının değil de verinin getirileceği adresteki ".Value" değerini silince düzgün bir şekilde çalışıyor bu sorun ile karşılaşan arkadaşlarım bu şekilde çözebilir son düzelttiğim hali aşağıdaki gibidir.
Saygılar sevgiler.
herkese çok teşekkür ederim.

k2s1.Range("A"1:A" & ss)= _
k1s1.Range("A"1:A" & ss).Value
 
Tebrikler..
 
Geri
Üst