Skip to main content

AccessTr.neT


Sınav Değerlendirme

ercansahiner61
ercansahiner61
46
3279

Sınav Değerlendirme

#22
2.soruyu anlamadım.
Diğerleri bitti.

Kodların kısa olması için ve çözümün kolay yapılabilmesi için Ayarlar adında bir sayfa ekledim.Bu sayfada işlemleri yaptırıp temizlettim en sonda.
Ayrıca yazdırma alanınıda dinamik yaptırdım.Hatalar olursa yazın düzeltelim.

PHP Kod:
Sub Kopyala()
    Dim syfAyarlar As Worksheet
    Dim Sht 
As Worksheet
    Dim sonAna 
As Long
    
    Set syfAyarlar 
ThisWorkbook.Sheets("Ayarlar")
    Set Sht ThisWorkbook.Worksheets("ANA LİSTE")
    
    sonAna 
Sht.Range("A" Rows.Count).End(3).Row
    
If sonAna 2 Then GoTo son
    
If WorksheetFunction.CountA(Sht.Range("A2:A" Rows.Count)) = 0 Then GoTo son
    syfAyarlar
.Range("A:C").Clear
    Sht
.Range("A2:A" sonAna).Copy
    syfAyarlar
.Range("A1").PasteSpecial xlPasteValues
    
    ayir syfAyarlar
    syfAyarlar
.Range("A:B").Sort key1:=syfAyarlar.Range("A1"), key2:=syfAyarlar.Range("B1")
    Birlestir syfAyarlar
    syfAyarlar
.Range("A:C").Clear
son
:
    Application.CutCopyMode False
    Set syf 
Nothing
    Set Sht 
Nothing
End Sub

Sub ayir
(syf As Worksheet)
     syf.Columns("A:A").TextToColumns Destination:=Range("A1"), DataType:=xlDelimited_
        TextQualifier
:=xlDoubleQuoteConsecutiveDelimiter:=FalseTab:=False_
        Semicolon
:=FalseComma:=FalseSpace:=FalseOther:=TrueOtherChar _
        
:="/"FieldInfo:=Array(Array(11), Array(21)), TrailingMinusNumbers:=True
End Sub

Sub Birlestir
(syf As Worksheet)
    Dim i As Longsay As LongsonAyarlar As Long
    say 
1
    Application
.ScreenUpdating False
    With syf
        sonAyarlar 
= .Range("A" Rows.Count).End(3).Row
        
.Cells(13).Value = .Cells(11).Value "/" & .Cells(12).Value
        
For 2 To sonAyarlar 1
            
If .Cells(i1).Value <> .Cells(11).Value Then
                 say 
say 1
                
.Cells(say3).Value = .Cells(11).Value "/" & .Cells(12).Value
            End 
If
        Next
         sonAyarlar 
= .Range("C" Rows.Count).End(3).Row
         bul syf
ThisWorkbook.Worksheets("SIRALAMA"), sonAyarlar
    End With
    Application
.ScreenUpdating True
End Sub


Sub bul
(ByVal syf As WorksheetByVal syfSiralama As WorksheetByVal son As Long)
    Dim i As Longbul As Range
    
    
For 1 To son
        aranan 
syf.Cells(i3).Value
        Set bul 
syfSiralama.Cells.Find(syf.Cells(i3).Value, , , 1)
        If Not bul Is Nothing Then bul.Font.Bold True
    Next
    Set bul 
Nothing
End Sub

Sub ListeAktarDz
()
    Dim SonStr As Long
    Dim Sht 
As Worksheet
    Dim ShtHdf 
As Worksheet
    Dim Dizi
() As Variant
    Dim DiziKynk
() As Variant
    
Const sutun As Byte 12
    
    Set Sht 
ThisWorkbook.Worksheets("ANA LİSTE")
    Set ShtHdf ThisWorkbook.Worksheets("SIRALAMA")
    
    ShtHdf
.Range("A2"ShtHdf.Cells(Rows.Count"XFD")).Clear
    SonStr 
Sht.Cells(Sht.Rows.Count"A").End(xlUp).Row
    
    
If SonStr 2 Then GoTo son
    
If SonStr 2 Then
        ShtHdf
.Range("A2").Value Sht.Range("A2").Value
        
GoTo son
    End 
If
    
    StrSay 
= (SonStr 1) \ sutun 1
    ReDim Dizi
(StrSaysutun)
    DiziKynk Sht.Range("A2:A" SonStr)
    
    i 
0
    
For StrX LBound(DiziKynkTo UBound(DiziKynk)
        Dizi(((StrX 1) \ sutun), (StrX 1Mod sutun) = DiziKynk(StrX1)
    Next StrX
    ShtHdf
.Range("A2").Resize(UBound(Dizi1) - 1sutun).Value Dizi
    ShtHdf
.Range("A2").Resize(UBound(Dizi1) - 1sutun).Borders.LineStyle 1
    ShtHdf
.PageSetup.PrintArea "$A$1:$L$" UBound(Dizi1'sayfa yazdirma alani icin otomatik yapildi
son:
    On Error Resume Next
    Erase Dizi: Set Sht = Nothing: Set ShtHdf = Nothing
    Kopyala
    MsgBox "bitti"
End Sub 
.rar Düşüm listesi xlsm2.rar (Dosya Boyutu: 128,08 KB | İndirme Sayısı: 2)
Cevapla

Bir hesap oluşturun veya yorum yapmak için giriş yapın

Yorum yapmak için üye olmanız gerekiyor

ya da

Bu Konudaki Yorumlar
Sınav Değerlendirme - Yazar: ercansahiner61 - 05/02/2021, 00:45
RE: Dikey Verileri Yatay Olarak Sayfa Sayfa Yazdırma Sorunu - Yazar: feraz - 10/02/2021, 00:23
Task