- Katılım
- 2 Mart 2005
- Mesajlar
- 2,960
- Excel Vers. ve Dili
-
ev: Ofis 2007- Win Xp
iş: Ofis 2010- Win Vista
Kapalı Çalışma Kitabından belli çalışma sayfalarını silme
Yukarıdaki kodlar Aktif çalışma kitabında çalışıyor.....
Ancak Kapalı olan c:\test\aaa.xls ye makro yazmadan ben bu işlemleri nasıl yaparım?
özellikle ikinci kod olan 'koru01, 2,3,4,5 dışındaki sayfalar bu kitapta kalır işlemi....
Uğraşa uğraşa kendi sorumun bir parçasını yanıtladım, burdan öte bilgim yetmiyor...
LÜTFEN YARDIM EDİN
Kod:
Sub AktKit_KrnmynSf_Sil()
[color="red"]'sadece koru01, 2,3,4,5 bu kitapta kalır[/color]
Set s1 = Sheets("koru01"): Set s2 = Sheets("koru02")
Set s3 = Sheets("koru03"): Set s2 = Sheets("koru04")
Set s2 = Sheets("koru05")
cs_kr1 = "koru01": cs_kr2 = "koru02": cs_kr3 = "koru03": cs_kr4 = "koru04": cs_kr5 = "koru05"
'---------------------
'Örnek Dosyasında sonradan oluşturlan dosyaları siler
'korunacak dosyaları başa taşı
Sheets("koru01").Move Before:=Sheets(1)
Sheets("koru02").Move Before:=Sheets(2)
Sheets("koru03").Move Before:=Sheets(3)
Sheets("koru04").Move Before:=Sheets(4)
Sheets("koru05").Move Before:=Sheets(5)
For i = Sheets.Count To 1 Step -1 'For i = 1 To Sheets.Count
If Sheets(i).Name <> cs_kr1 And Sheets(i).Name <> cs_kr2 And _
Sheets(i).Name <> cs_kr3 And Sheets(i).Name <> cs_kr4 And _
Sheets(i).Name <> cs_kr5 Then
Application.DisplayAlerts = False
Sheets(i).Delete
Application.DisplayAlerts = True
Else
Set s1 = Nothing: Set s2 = Nothing: Set s3 = Nothing: Set s4 = Nothing: Set s5 = Nothing: Exit Sub
End If
Next i
MsgBox "Arşivlenen dosyadan, " & vbCr & _
cs_kr1 & " / " & cs_kr2 & " / " & vbCr & _
cs_kr3 & " / " & cs_kr4 & " / " & vbCr & _
cs_kr5 & vbCr & " çalışma sayfaları silinmiştir.", _
vbInformation, vbInformation, "BİLGİ-01"
End Sub
'************************************/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/
'************************************/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/
Kod:
Sub AktKit_KrnnSf_Sil()
[color="red"]'koru01, 2,3,4,5 dışındaki sayfalar bu kitapta kalır[/color]
Dim TargetFolder As String
Dim s1 As Worksheet ', s2 As Worksheet, s3 As Worksheet
Set s1 = Sheets("koru01"): Set s2 = Sheets("koru02")
Set s3 = Sheets("koru03"): Set s2 = Sheets("koru04")
Set s2 = Sheets("koru05")
'Taslak Sayfalar
cs_kr1 = "koru01": cs_kr2 = "koru02": cs_kr3 = "koru03": cs_kr4 = "koru04": cs_kr5 = "koru05"
'---------------------
'Örnek Dosyasında sonradan oluşturlan dosyaları siler
'korunmacak dosyaları sona taşı
sn = Sheets.Count
Sheets("koru01").Move After:=Sheets(sn)
Sheets("koru02").Move After:=Sheets(sn)
Sheets("koru03").Move After:=Sheets(sn)
Sheets("koru04").Move After:=Sheets(sn)
Sheets("koru05").Move After:=Sheets(sn)
For i = Sheets.Count To 1 Step -1 'For i = 1 To Sheets.Count
If Sheets(i).Name = cs_kr1 Then
Application.DisplayAlerts = False: Sheets(i).Delete: Application.DisplayAlerts = True
ElseIf Sheets(i).Name = cs_kr2 Then
Application.DisplayAlerts = False: Sheets(i).Delete: Application.DisplayAlerts = True
ElseIf Sheets(i).Name = cs_kr3 Then
Application.DisplayAlerts = False: Sheets(i).Delete: Application.DisplayAlerts = True
ElseIf Sheets(i).Name = cs_kr4 Then
Application.DisplayAlerts = False: Sheets(i).Delete: Application.DisplayAlerts = True
ElseIf Sheets(i).Name = cs_kr5 Then
Application.DisplayAlerts = False: Sheets(i).Delete: Application.DisplayAlerts = True
Else
Set s1 = Nothing: Set s2 = Nothing: Set s3 = Nothing: Set s4 = Nothing: Set s5 = Nothing: Exit Sub
End If
Next i
End Sub
'************************************/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/
'************************************/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/
Ancak Kapalı olan c:\test\aaa.xls ye makro yazmadan ben bu işlemleri nasıl yaparım?
özellikle ikinci kod olan 'koru01, 2,3,4,5 dışındaki sayfalar bu kitapta kalır işlemi....
Uğraşa uğraşa kendi sorumun bir parçasını yanıtladım, burdan öte bilgim yetmiyor...
LÜTFEN YARDIM EDİN