Eilisen päivämäärän metsästys jälleen!

M1nähän s3

Moro,

miten minä saan tätä koodia muutettua sillä tapaa että se antaa minulle EILISEN päivämäärän?? Koodi kyllä tekee sen pienen mutkan kautta mutta olisi ihan kiva mennä suorinta tietä.

Minulla on siis työkirjassa kaksi Commandbuttonia, toisessa on koodi joka antaa tämän hetkisen päivämäärän, ja toiseen nappiin haluaisin koodin joka antaa eilisen päivän. Nämä päivämäärät aukeavat siis uusina välilehtinä ja ovat nimetty päivämäärän mukaan. Kaek toimii niinku pittää mutta tämä eilisen päivän koodi toimii tällä tapaa;

Painan nappia, se antaa tämän päivän, painan uudestaan samasta napista, se antaa eilisen päivämäärän. Mikä kohta tässä koodissa pitää poistaa että se antaa VAIN eilisen päivämäärän?? Kiitokset etukäteen!

Sub Eilinen()
ActiveWorkbook.Unprotect
Worksheets("Default").Visible = True
Dim CurrentDay As Integer
Dim NewName As String
Dim WS As Worksheet
Set WS = ActiveSheet
If IsNumeric(Right(WS.Name, 2)) Then
CurrentDay = Right(WS.Name, 2)
ElseIf IsNumeric(Right(WS.Name, 1)) Then
CurrentDay = Right(WS.Name, 1)
Else
Exit Sub
End If
CurrentDay = CurrentDay 1
NewName = Day(Date) - 1 & "." & Month(Date) & "." & Year(Date)
'NewName = Format(Date, "dd.mm.yyyy")
Dim checkWs As Worksheet
On Error Resume Next
Set checkWs = Worksheets(NewName)
If checkWs Is Nothing Then
'Copies the current sheet to the end of the workbook
Sheets("Default").Copy after:=Worksheets(Worksheets.Count)
ActiveSheet.Name = NewName
ActiveSheet.Unprotect
Range("D2") = NewName
ActiveSheet.Protect
Dim oleObj As OLEObject
Else
Set checkWs = Nothing
MsgBox "EILINEN PÄIVÄMÄÄRÄ ON LISÄTTY JO!"
End If
Worksheets("Default").Visible = False
ActiveWorkbook.Protect
End Sub

3

155

    Vastaukset

    Anonyymi (Kirjaudu / Rekisteröidy)
    5000
    • Sub Eilinen()
      On Error Resume Next
      ActiveWorkbook.Unprotect
      If Worksheets(Format(Date - 1, "dd.mm.yyyy")) Is Nothing Then
      Worksheets("Default").Copy After:=Worksheets(Worksheets.Count)
      ActiveSheet.Name = Format(Date - 1, "dd.mm.yyyy")
      Else
      MsgBox "EILINEN PÄIVÄMÄÄRÄ ON LISÄTTY JO!"
      End If
      ActiveWorkbook.Protect
      End Sub

      Keep EXCELing
      @Kunde

    • Ja vieläkin sama m1e

      Kiitokset! Se toimii täydellisesti!!

      Voisitkos vielä sen verran opastaa että saako tuohon koodin liitettyä TOISSAPÄIVÄÄ??? Eli jos painan nappia, se avaa uuden välilehden ja antaa eilisen päivämäärän, napsautan toisen kerran, se avaa taas uuden välilehden ja antaa toissapäiväisen ???

      Jos ei ole mahdollista niin laitan kaksi nappia.

      • Option Explicit

        Sub Eilinen()
        Dim vastaus As String
        On Error Resume Next
        ActiveWorkbook.Unprotect
        vastaus = MsgBox("Eilinen (Kyllä) vaiko toissapäiväinen (Ei)?", vbQuestion vbYesNo, "Uuden taulukon lisäys")
        If vastaus = 6 Then
        If Worksheets(Format(Date - 1, "dd.mm.yyyy")) Is Nothing Then
        Worksheets("Default").Copy After:=Worksheets(Worksheets.Count)
        ActiveSheet.Name = Format(Date - 1, "dd.mm.yyyy")
        Else
        MsgBox "EILINEN PÄIVÄMÄÄRÄ ON LISÄTTY JO!"
        End If
        Else
        If Worksheets(Format(Date - 2, "dd.mm.yyyy")) Is Nothing Then
        Worksheets("Default").Copy After:=Worksheets(Worksheets.Count)
        ActiveSheet.Name = Format(Date - 2, "dd.mm.yyyy")
        Else
        MsgBox "TOISSAPÄIVÄN PÄIVÄMÄÄRÄ ON LISÄTTY JO!"
        End If
        End If

        ActiveWorkbook.Protect
        End Sub

        Keep EXCELing
        @Kunde


    Ketjusta on poistettu 0 sääntöjenvastaista viestiä.

    Luetuimmat keskustelut

    1. Jos venäjällä olisi kansan valitsema presidentti, olisiko Ukrainan sotaa?

      Ei varmasti olisi. Sehän on tiedossa, että raskaalla vaalivilpillä putin jatkaa pressana.
      Maailman menoa
      275
      3932
    2. Riikka jytkytti naftan hinnan jo yli 2,3 euroon

      Sannan aikaan esimerkiksi dieseliä selvästi kalliimpaa bensaakin sai 1,3 eurolla. https://www.is.fi/autot/art-200001188
      Maailman menoa
      92
      3575
    3. Vasemmiston feministinaiset puolustavat islamia

      mikä on täysin järjenvastaista, mutta eihän femakoilla paljon järkeä olekkaan, leijuvat siellä omassa kuplassaan. Myös
      Maailman menoa
      162
      2557
    4. Ei se halua mitään!!

      Arkailija koko tyyppi!
      Ikävä
      62
      2335
    5. Jätän tähän viesti kaivatullesi

      jos jotain jäänyt sanomatta. 👇
      Ikävä
      154
      1912
    6. Olet kyllä erittäin huono yhdistelemään pisteitä.

      Etkä vain sinä vaan kaikki teilläpäin.
      Ikävä
      34
      1727
    7. Päivän Sanna: Suomi maailman onnellisin maa

      Sanna muutti Suomen maailman onnellisimmaksi maaksi. Hänen pyyteetön työnsä maailmalla tuottaa edelleen tulosta.
      Maailman menoa
      21
      1402
    8. Onko jo liian "vanha" vai mitä mieltä olet? 57-v. saa raakaa tekstiä tv:ssä

      The Summit Suomi tv-ohjelmassa 57-vuotiaan Maritan jaksamista kyseenalaistettiin iän takia. Onko tässä iässä jo liian "v
      50 plus
      30
      1288
    9. Etkö sitten itse

      ole koskaan ylittänyt rajaa?
      Ikävä
      33
      1285
    10. Mitä järkeä iskeä

      Varattua ja yrittää saada sitä eroamaan
      Ikävä
      46
      1202
    Aihe