oceanrace
Gebruiker
- Lid geworden
- 14 mei 2008
- Berichten
- 198
Beste forummers,
Wie kan me helpen om de volgende private sub in Blad1 te verwijderen door een toevoeging in de code opslaanzonderformules...
Onderstaande code gebruik ik voor opslaan als, zonder formules en macro's maar de private sub in Blad1 blijft bestaan, dit geeft problemen.
Excel 2003 geeft geen problemen maar in 2007 loopt de zaak vast omdat volgens mij de private sub in blad1 niet verwijderd wordt.
Wie kan me helpen om de volgende private sub in Blad1 te verwijderen door een toevoeging in de code opslaanzonderformules...
Code:
Private Sub Worksheet_SelectionChange(ByVal Target As Excel.Range)
If Not Application.Intersect(Target, Range("A68:A83")) Is Nothing Then
Call copycel
End If
End Sub
Onderstaande code gebruik ik voor opslaan als, zonder formules en macro's maar de private sub in Blad1 blijft bestaan, dit geeft problemen.
Code:
Sub Opslaanzonderformules()
Dim strFileName As Variant, strPath As String
Dim VBProj As VBIDE.VBProject, VBComp As VBIDE.VBComponent, CodeMod As VBIDE.CodeModule
Dim astrLinks As Variant
strFileName = Application.GetSaveAsFilename(InitialFileName:=strPath & [AG2], _
FileFilter:="Excel Files (*.xls), *.xls, Excel 2007 Files (*.xlsm), *.xslm", _
FilterIndex:=1, _
Title:="Opslaan als excel document (alleen werkblad kaart zonder formules)")
If strFileName = False Then
MsgBox "De kaart is niet opgeslagen!", vbInformation + vbOKOnly, "Er is iets misgegaan..."
Else
ActiveSheet.Copy
With ActiveWorkbook
With .Sheets("TK")
.Unprotect
.UsedRange.Value = .UsedRange.Value
Union(.Range(.Cells(65, 1), .Cells(.Rows.Count, .Columns.Count)), _
.Range(.Cells(1, 65), .Cells(65, .Columns.Count))).Clear
ActiveSheet.Cells.ClearComments
ActiveSheet.DrawingObjects.Visible = True
ActiveSheet.DrawingObjects.Delete
.Protect
End With
' Define variable as an Excel link type.
astrLinks = ActiveWorkbook.LinkSources(Type:=xlLinkTypeExcelLinks)
' Break the first link in the active workbook.
For i = 1 To UBound(astrLinks)
ActiveWorkbook.BreakLink _
Name:=astrLinks(i), _
Type:=xlLinkTypeExcelLinks
Next i
Set VBProj = .VBProject
For Each VBComp In VBProj.VBComponents
If VBComp.Type = vbext_ct_Document Then
Set CodeMod = VBComp.CodeModule
With CodeMod
.DeleteLines 1, .CountOfLines
End With
Else
VBProj.VBComponents.Remove VBComp
End If
Next VBComp
.SaveAs Filename:=strFileName
End With
A = MsgBox("Wil je de kaart printen? Maak een keuze, de opgeslagen kaart wordt vervolgens afgesloten om terug te gaan naar het origineel. ", vbQuestion + vbYesNo, "Gelukt, de kaart is opgeslagen!")
If A = vbYes Then
Application.Dialogs(xlDialogPrint).Show
End If
ActiveWorkbook.Close Savechanges:=False
End If
End Sub
Excel 2003 geeft geen problemen maar in 2007 loopt de zaak vast omdat volgens mij de private sub in blad1 niet verwijderd wordt.