vreemd steeds bestand opslaan ?

Status
Niet open voor verdere reacties.

wilbert1967

Gebruiker
Lid geworden
19 jun 2004
Berichten
629
hallo

sinds ik onderstaande code in thisworkbook van een excelbestand heb staan komt iedere keer de vraag of ik het bestand wil opslaan tijdens het sluiten. Terwijl er niks is gewijzigd aan het document.
Kan iemand dit mij verklaren?

Code:
Sub knop_defopslaan_tonen()
  Dim check
  Dim teller
  Dim inhoud
  
  Cells.Find(What:="Meterstanden", After:=ActiveCell, LookIn:=xlFormulas, _
        LookAt:=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, _
        MatchCase:=False, SearchFormat:=False).Activate
  ActiveCell.Offset(1, 4).Range("A1").Select
  inhoud = ActiveCell.Value
  
  Do
    If IsEmpty(inhoud) Then
      ActiveSheet.Shapes("CommandButton3").Visible = False
      ActiveCell.Offset(1, 0).Range("A1").Select
      inhoud = ActiveCell.Value
      check = True
      teller = teller + 1
    Else
      ActiveSheet.Shapes("CommandButton3").Visible = True
      check = False
    End If
  Loop Until (check = False) Or (teller = 4)
  Range("a1").Select
End Sub
 
Wat doet deze code in ThisWorkbook ? (in de zin van Wat doet zij op deze plaats ?)
 
Code:
Do
    If IsEmpty(inhoud) Then
      ActiveSheet.Shapes("CommandButton3").Visible = False
      ActiveCell.Offset(1, 0).Range("A1").Select
      inhoud = ActiveCell.Value
      check = True
      teller = teller + 1
    Else
      ActiveSheet.Shapes("CommandButton3").Visible = True
      check = False
    End If
  Loop Until (check = False) Or (teller = 4)

Onder de aanname dit dit gedraaid wordt voordat het workbook afgeloten wordt. Wordt met dit stuk code hoe dan ook een eigenschap in 'Excels ogen' aangepast. Als commandbutton3 al zichtbaar was, en wederom op visible = true gezet wordt, ziet Excel dit als een verandering. In de andere optie veranderd het sowieso waarden, waardoor eveneens om opslaan gevraagd wordt bij het afsluiten.

Andere opmerking, volgens mij is dit efficiënter
Code:
 ActiveCell.Offset(1, 4).Select
dan dit:
Code:
 ActiveCell.Offset(1, 4).Range("A1").Select

Volgens mij is dit de verklaring van jouw'n waarnemingen. Hopelijk helpt het?

Met vriendelijke groet'n

Tilly_the_Shark
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan