• DİKKAT

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

Sayfadaki Tüm içeriği Temizleyip Üzerine Yazdırma

  • Konbuyu başlatan Konbuyu başlatan quesh
  • Başlangıç tarihi Başlangıç tarihi
Katılım
25 Mart 2010
Mesajlar
340
Excel Vers. ve Dili
2007,2010
Arkadaşlar merhaba.

Aşağıdaki kod ile Sql üzerinden sorgu yapan bir makro kaydettim. Ancak makroyu her çalıştırdığımda excelde yeni bir sayfa açılıyor ve verileri o yeni sayfaya alıyor. yani; ilk sorgu yaptığımda veriler Sayfa2'ye geliyor, 2.nci sorguda Sayfa3'e 3.sorguda Sayfa4'e.... Ancak ben bunun olmasını istemiyorum, benim istediğim; sorgulanan verileri her zaman aynı sayfaya yollaması ve ardından yapılan sorguda bir önceki sorgunun verilerini temizleyip, yeni sorgunun verilerini üzerine yazması. yani sorguyu yaptığımda sorgu verileri Sayfa3'ün A1:Z20000 aralığına yazdırılsın, ardından yapılan sorguda Sayfa3 A1:Z20000 içeriği silinip üzerine yeni sorgunun verileri yazılsın.

Kod aşağıdaki gibidir.
Saygılar.


Kod:
Sub SORGU()
'
' SORGU Makro
' Makro MURAT tarafından 08.01.2011 tarihinde kaydedildi.
'
 
'
 
    ActiveWorkbook.Worksheets.Add
    With ActiveSheet.QueryTables.Add(Connection:= _
        "ODBC;DSN=OTOSRV;Description=OTOSRV;UID=sa;;APP=Microsoft Office 2003;WSID=MURAT-PC;DATABASE=TRIGONDATAMERKEZ;Network=DBMSSOCN" _
        , Destination:=Range("A1"))
        .CommandText = Array( _
        "SELECT Cari.Miktari, Cari.Satis, Cari.ay, Cari.yil, Cari.BolgeId" & Chr(13) & "" & Chr(10) & "FROM TRIGONDATAMERKEZ.dbo.Cari Cari" & Chr(13) & "" & Chr(10) & "WHERE (Cari.ay=" & Sheets("Sayfa1").Range("M2").Value & ") AND (Cari.yil=" & Sheets("Sayfa1").Range("L2").Value & ") AND (Cari.BolgeId=" & Sheets("Sayfa1").Range("n2").Value & " )" _
        )
        .Name = "OTOSRV kaynağından sorgula"
        .FieldNames = True
        .RowNumbers = False
        .FillAdjacentFormulas = False
        .PreserveFormatting = True
        .RefreshOnFileOpen = False
        .BackgroundQuery = True
        .RefreshStyle = xlInsertDeleteCells
        .SavePassword = False
        .SaveData = True
        .AdjustColumnWidth = True
        .RefreshPeriod = 0
        .PreserveColumnInfo = True
        .Refresh BackgroundQuery:=False
        MsgBox "Tamamdır", vbInformation, "M U R A T H."
    End With
End Sub
 
merhaba;
makronuzdaki ilk satırı silip, yerine aşağıdaki satırları ekleyiniz.

Dim alan As Range
Set alan = ActiveWorkbook.Sheets("Sayfa3").Range("a1:z20000")
Sheets("Sayfa3").Select
alan.ClearContents
 
Sayın Halit3 ve Excel03 ...

Teşekkürler
 
merhabalar guesh arkadasim banada sendeki gibi birseylazim ama tum sayfayi degil excelde bilgi gelen kolonu yani ornek a1 veya a2 bendeki post cihazi excele bilgi gonderiyor bende istiyorum gelen bilgi baska bir yere gitsin yerien gelen yeni bilgi daha baska bir musteri dosyasina gitsin sendkei boyle birsey benim icin sendekini buraya eklersen sevirim
veya yazimi okuyan diger hocalarim bu konuda beni bilgilendirilerse sevinrim

saygilarimla
 
,Sayın ahmethuseyin yeni bir konu açıp örnek bir dosyayla açıklamanızı pekiştirirseniz eminim ki daha fazla kişişnin yardınmcı olma şansı olacakır.

merhabalar guesh arkadasim banada sendeki gibi birseylazim ama tum sayfayi degil excelde bilgi gelen kolonu yani ornek a1 veya a2 bendeki post cihazi excele bilgi gonderiyor bende istiyorum gelen bilgi baska bir yere gitsin yerien gelen yeni bilgi daha baska bir musteri dosyasina gitsin sendkei boyle birsey benim icin sendekini buraya eklersen sevirim
veya yazimi okuyan diger hocalarim bu konuda beni bilgilendirilerse sevinrim

saygilarimla
 
Geri
Üst