• Privacywetgeving
    Het is bij Helpmij.nl niet toegestaan om persoonsgegevens in een voorbeeld te plaatsen. Alle voorbeelden die persoonsgegevens bevatten zullen zonder opgaaf van reden verwijderd worden. In de vraag zal specifiek vermeld moeten worden dat het om fictieve namen gaat.

Opslaan foutgevoelig

Status
Niet open voor verdere reacties.

Hunuloeloe

Gebruiker
Lid geworden
12 sep 2016
Berichten
311
Goedemorgen,

Ik heb een planning gemaakt voor het bedrijf. Elke dag vult de planner de dagproductie in. nu is dit echter best foutgevoelig. Hij moet namelijk eerst in cel B1 de datum invullen en vervolgens de uurgegevens bij het personeel. Als hij alles heeft ingevuld klikt hij op exporteren waarbij het bestand in een map op de I schijf opgeslagen wordt met de datum ingevuld in B1. De volgende dag vult hij weer eerst de datum in etc. etc.


Het probleem is dat als hij vergeet de datum in te vullen in B1 het bestand niet goed geëxporteerd wordt (hij overschrijd namelijk een ander). Is er een oplossing waardoor hij bij het openen van het betreffende werkblad eerst de datum in moet vullen of hebben jullie een beter idee hoe dit opgelost kan worden?

Bekijk bijlage opslaan foutgevoelig.xlsm

Alvast bedankt voor het meedenken
 
Zet in B1 de formule =VANDAAG() en iedere dag staat er de juiste datum, of is dat te kort door de bocht?
 
Met VBA bepaal je zelf de naamgeving van het bestand en sluit daarmee overschrijving uit.
 
Hoi,

Bedankt voor het meedenken, echter de oplossing van Cobbe spreekt me het meeste aan. Ik heb deze overgenomen in het planningsbestand maar als ik het tablad open springt niet de userform in beeld
Hoe kan ik ervoor zorgen dat de userform opent bij het openen van het tablad?
 
Heb je de code wel in ThisWorkbook_open gezet?
En het Userform overgenomen?
 
Laatst bewerkt:
Ik heb hem overgenomen maar hij staat in een tabblad formulier?
Over het workbook hier staat al een code in er is in het bestand namelijk ook een weekplanning opgenomen die gelijk bij openen zichtbaar word.

De dagplanning waar dit vraagstuk over gaat is een apart tabblad
 
Als je dit in ThisWorkbook open zet:
Code:
With Sheets("Blad1")
    .Range("B1,C8:L59").ClearContents
    
    UserForm1.Show
End With
heeft dat enkel invloed op tab(Blad1).
Wijzig Blad1 in de naam van uw tab en het werkt.
 
Ik denk dat ik iets fout doe

Code:
Private Sub Workbook_Open()
    Application.Goto Sheets("Weekplanning").Cells(3, 14 * Application.WeekNum(Date, 21) - 11 + 14)
    Application.Goto Reference:=Cells(1, ActiveCell.Column), scroll:=True
    Cells(7, ActiveCell.Column).Select


With Sheets("Dagplanning Expeditie")
    .Range("B1,C8:L59").ClearContents
    
    UserForm1.Show
End With
End Sub

Als ik nu het bestand open zie ik de weekplanning met daarin het userform.
maar ik moet het userform alleen zien wanneer ik tabblad 1 open, wat doe ik fout?
 
Hang dit dan achter blad 'Dagplanning Expeditie'
Code:
Private Sub Worksheet_Activate()
    .Range("B1,C8:L59").ClearContents
      UserForm1.Show
End Sub

ps: In je userform dien je ook de tabnaam aan te passen.
 
Bijna,

Code:
Private Sub Worksheet_Change(ByVal Target As Range)
    If Target.Address = "$B$1" Then
        Range("C8:L59").ClearContents
    End If
End Sub

Dit was de originele clearcontent code. maar met de code die ik van jou gekregen heb geeft die een fout bij:
Private Sub Worksheet_Activate()
.Range
 
En werkt het nu?
Want ik zie dat je Userform1.show weggelaten hebt.
 
Haal de rode punt weg.
Code:
Private Sub Worksheet_Activate()
    [COLOR="#FF0000"].[/COLOR]Range("B1,C8:L59").ClearContents
      UserForm1.Show
End Sub
 
het was inderdaad de rode punt.

ik heb even getest maar het probleem waar ik nu tegenaanloop is het volgende:
de man die deze dagplanning invult, vult gedurende de dag de gegevens in en slaat hierbij eerst de planning een aantal keer voordat hij hem echt gaat exporteren.

met hetgeen wat jullie voor me gemaakt hebben is het zo dat elke keer als ik het bestand open de content in dagplanning weg is. en dit moet dus niet. Dit moet alleen wanneer de datum in b1 veranderd :()
 
Test dit eens, weet niet of ik het juist heb.
Code:
Private Sub Worksheet_Activate()
Dim D As String
D = Date
  If range("B1").Value = D Then Exit Sub
    range("B1,C8:L59").ClearContents
      UserForm1.Show
End Sub
 
Laatst bewerkt:
Ja dit is het bijna!

Zou het mogelijk zijn als ik vervolgens op de knop exporteer druk cel B1 leeggemaakt wordt?!
 
Zo misschien maar of alles dan nog goed werkt weet ik niet.
Code:
Sub Kopie_Dagplanning_Expeditie()
  [COLOR="#FF0000"]Range("B1").ClearContents[/COLOR]
c00 = "I:"
    Sheets("Dagplanning Expeditie").Copy
    ActiveWorkbook.SaveAs c00 & "Dagplanning " & Format([b1], "yyyy-mm-dd") & ".xlsx", 51
    ActiveWindow.Close
End Sub

Of
Code:
Sub Kopie_Dagplanning_Expeditie()  
c00 = "I:"
    Sheets("Dagplanning Expeditie").Copy
    ActiveWorkbook.SaveAs c00 & "Dagplanning " & Format([b1], "yyyy-mm-dd") & ".xlsx", 51
    [COLOR="#FF0000"]Range("B1").ClearContents[/COLOR]
    ActiveWindow.Close
End Sub
 
Laatst bewerkt:
Ja, hij leegt idd de cel maar vervolgens geeft die foutcode:

Code:
Private Sub Worksheet_Activate()
Dim D As String
D = Date
  If Range("B1").Value = D Then Exit Sub
    Range("B1,C8:L59").ClearContents
      UserForm1.Show
End Sub

Userform1.Show is dan de fout?!

Ik denk dat dan gelijk weer de userform in beeld moet komen (dit zou tevens ook wel heel mooi zijn)

PS
Hij slaat hem dan ook niet goed op bij exporteren dus we moeten het via een andere weg zoeken denk ik of de code iets aanpassen?
 
Laatst bewerkt:
Zoek niet verder

Code:
Sub Kopie_Dagplanning_Expeditie()
c00 = "H:\Stage\Expeditie\Resource Planning\Macro bestand\Dagproductie test\"
    Sheets("Dagplanning Expeditie").Copy
    ActiveWorkbook.SaveAs c00 & "Dagplanning " & Format([b1], "yyyy-mm-dd") & ".xlsx", 51
    ActiveWindow.Close
    [COLOR="#FF0000"]Range("B1").ClearContents[/COLOR]
End Sub

Zo moest die :) eerst opslaan daarna cel leegmaken.

Nu is het zo dat hij opgeslagen wordt als xlsx dus gaat hij van xlsm naar xlsx. hierbij geeft die steeds een foutmelding aan of ik hem op een bepaalde wijze wil opslaan -.- zou die foutmelding wegkunnen?
 
Ik ben geen programeur, echt hier in een Amateur.

xlsx bevat geen Macro's je moet hem als xlsm opslaan, anders ben de Macro's kwijt.
 
Laatst bewerkt:
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan