• DİKKAT

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

Excel sayfasındaki birleştirilmiş veriyi not degerine aktarmak istiyorum makroyla

Katılım
14 Mayıs 2009
Mesajlar
271
Excel Vers. ve Dili
2007 türkçe
MERHABA SEVGİLİ HOCALRIM ÖNCELİKLE FORUM UN 5 YILINI KUTLUYORUM

BENİM SORUNUM ŞU HOCALARIM ;

BEN ADEM ÇETİN ATLI EXELDEKİ KESİNTİ SAYFASINDAKİ BİRLEŞTİRİLMİŞ *.TXT 1 - *.TXT 2 SUTUNUNDAKİ, VERİLERİ AYRI AYRI SÖZLEŞMELİ VE İŞÇİ OLMAK ÜZERE NOTDEFTERİNE (txt) ATMASINI İSTİYORUM

NOT:EXEL VE NOT DEFTERİ ÖRNEĞİM EKTEDİR.

YARDIMLARINIZ İÇİN ŞİMDİDEN TEŞEKÜR EDİYORUM....
 

Ekli dosyalar

Son düzenleme:
"Sub txt_aktar1()
Dim SonSatir, i As Integer
Application.ScreenUpdating = False
SonSatir = Sheets("KESİNTİ").[A65536].End(3).Row

Range("L4").Select
Range(Selection, Selection.End(xlToRight)).Select
Range(Selection, Selection.End(xlDown)).Select
Selection.Replace What:="", Replacement:=" ", LookAt:=xlPart, _
SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _
ReplaceFormat:=False
Range("L4").Select

Open "C:\Documents and Settings\Zehni SAĞCAN\Belgelerim\KESİNTİ\İŞÇİ.TXT" For Output As #1
For i = 4 To SonSatir
Print #1, Cells(i, 12)
Next i
Close
MsgBox "İŞÇİ KESİNTİSİ AKTARILDI"
End Sub
"
bu kotlama ile işçi.txt dosyası oluşturuyorum ama , oluşturmuş olduğum dosyayı actığımda 21 kişi olması gerek ama 23 satır ekliyor normal 21 inci satırın sonunda kesmiyor 22 dememesi lazım bu sorunumu cözmemde yardımcı olurmusunuz
 
A sütununda 22nci ve 23ncü satırdaki hücrede veri olabilir.Kontrol edin.Eğer boş gözüküyorsa o hücreleri seçin ve F2 tuluna basın belkide boşluk karakteri girlmiştir bu hücrelere veya formül vardır bu hücrelerde. :cool:
 
A sütununda 22nci ve 23ncü satırdaki hücrede veri olabilir.Kontrol edin.Eğer boş gözüküyorsa o hücreleri seçin ve F2 tuluna basın belkide boşluk karakteri girlmiştir bu hücrelere veya formül vardır bu hücrelerde. :cool:

evet var hocam ama ben txt dosyasını sisteme atacağımdan 21 kişinin satırı lazım 22 dememesi lazım txt de
 
formül var ise son satırı bulmak için CountA worksheetfunction'unu kullanarak son satırı alınız.:cool:
 
"Sub txt_aktar1()
Dim SonSatir, i As Integer
Application.ScreenUpdating = False
SonSatir = Sheets("KESİNTİ").[A65536].End(3).Row

Range("L4").Select
Range(Selection, Selection.End(xlToRight)).Select
Range(Selection, Selection.End(xlDown)).Select
Selection.Replace What:="", Replacement:=" ", LookAt:=xlPart, _
SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _
ReplaceFormat:=False
Range("L4").Select

Open "C:\Documents and Settings\Zehni SAĞCAN\Belgelerim\KESİNTİ\İŞÇİ.TXT" For Output As #1
For i = 4 To SonSatir
Print #1, Cells(i, 12)
Next i
Close
MsgBox "İŞÇİ KESİNTİSİ AKTARILDI"
End Sub
"
bu kotlama ile işçi.txt dosyası oluşturuyorum ama , oluşturmuş olduğum dosyayı actığımda 21 kişi olması gerek ama 23 satır ekliyor normal 21 inci satırın sonunda kesmiyor 22 dememesi lazım bu sorunumu cözmemde yardımcı olurmusunuz

bu formülde nasıl uyarlarım bilmiyorum macroyu öğreniyorum hocam

ilginiz için teşekürler
 
pazartesi görüşürüz hocam bu formülü düzeltiverirseniz teşekür ederim.
 
Worksheetfunction.counta ile olmuyormuş.Değişik bir yöntem kullandım.
Aşağıdaki kodları denermisiniz.:cool:
Kod:
Sub txt_aktar1()
Dim hcr As Range, alan As String
Application.ScreenUpdating = False
alan = Sheets("KESİNTİ").Range("A4:A65536").SpecialCells(xlCellTypeConstants, 23).Address
Range("L4").Select
Range(Selection, Selection.End(xlToRight)).Select
Range(Selection, Selection.End(xlDown)).Select
Selection.Replace What:="", Replacement:=" ", LookAt:=xlPart, _
SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _
ReplaceFormat:=False
Range("L4").Select

Open "C:\Documents and Settings\Zehni SAĞCAN\Belgelerim\KESİNTİ\İŞÇİ.TXT" For Output As #1
For Each hcr In Sheets("KESİNTİ").Range(alan)
Print #1, hcr.Offset(0, 11).Value
Next
Close
MsgBox "İŞÇİ KESİNTİSİ AKTARILDI"
End Sub
 
Meraba evren hocam makroyu sözleşmeli içinde uyarladım ama ,

bu makro benim bir sorunumu çözmüyor oda şu;

not defterindeki (işçi için) 21 satırın sonunda olması lazım kursör veya not defterinde 22 satıra geçmemesi lazım

teşekür ederim bir kez daha

kolay gelsin;
 
Aşağıdaki kod 22 satırı geçmez.:cool:
Kod:
Sub txt_aktar1()
Dim hcr As Range, alan As String, say as byte
Application.ScreenUpdating = False
alan = Sheets("KESİNTİ").Range("A4:A65536").SpecialCells(xlCellTypeConstants, 23).Address
Range("L4").Select
Range(Selection, Selection.End(xlToRight)).Select
Range(Selection, Selection.End(xlDown)).Select
Selection.Replace What:="", Replacement:=" ", LookAt:=xlPart, _
SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _
ReplaceFormat:=False
Range("L4").Select

Open "C:\Documents and Settings\Zehni SAĞCAN\Belgelerim\KESİNTİ\İŞÇİ.TXT" For Output As #1
For Each hcr In Sheets("KESİNTİ").Range(alan)
[B][COLOR="Red"]say=say+1[/COLOR][/B]
Print #1, hcr.Offset(0, 11).Value
[B][COLOR="Red"]if say=22 then exit for[/COLOR][/B]
Next
Close
MsgBox "İŞÇİ KESİNTİSİ AKTARILDI"
End Sub
 
yine not defterindeki 22. satıra geciyor hocam

sizede zahmet veriyorum ama size çok teşekür ederim.
 
makro

hocam size rahatsızlık veriyorsam bilmeyerek özür dilerim not defterinde 22 . satıra geçiyor

ekteki gibi olması gerekmektedir. hocam aşağı inme tuşu ile inin 22.satıra geçmiyor 21.satırın sonunda 22.satırdan sonrasını silmesi lazım hocam

teşekürler
 

Ekli dosyalar

Son düzenleme:
Geri
Üst