Já vyzkoušel všech 12 měsíců a bez chyby
dovolil jsem si do makra od @cmuch1 vložit řadek pro eliminaci pátku . Snad to nebude vadit.
Sub CopyDayMonth()
Dim dtm As Variant
Dim Feb As Byte, Month As Byte, i As Byte
Application.ScreenUpdating = False
Month = Range("B2")
If (Format(Now, "yyyy") / 4) = (Format(Now, "yyyy") \ 4) Then
Feb = 29
Else
Feb = 28
End If
GetMonth = Choose(Month, 31, Feb, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31)
For i = 2 To GetMonth
dtm = Format(i, "00") & "." & Format(Month, "00") & "." & Format(Range("B7"), "yy")
If Not Weekday(CDate(dtm), vbMonday) = 5 Then '5 se rovná pátek alespon tady v ČR :-D
Sheets(Sheets.Count).Copy After:=Sheets(ThisWorkbook.Sheets.Count)
Sheets(Sheets.Count).Name = dtm
Range("B7").Formula = "=DATE(" & Format(Range("B7"), "yyyy") & ",B2," & i & ")"
Calculate
End If
Next i
Sheets(1).Select
Application.ScreenUpdating = True
End Sub
a co takhle
viz příloha
mno jo ted koukám, že tam není .enabled nebo .visible.
Tak teď nechápu proč je tam
textbox65 = true ,nebo
combobox4 = true
a nestačí jenom "If TextBox65 = "" Then MsgBox .... :Exit Sub"
atd...
asi mám dlouhé vedení
zrušit else
If TextBox65 = True And TextBox65 = "" Then MsgBox "Zadejte rozměr délky a šířky zdi...(Rozměr zdiva 2)", vbInformation: Exit Sub
If ComboBox4 = True And ComboBox4 = "" Then MsgBox "Vyberte rozměr bednění (cihly) pro výpočet spotřeby... (Rozměr zdiva 2)", vbInformation: Exit Sub
nebo v případe že tech sloupců bude víc může se to řešit i takhle
viz přílohu
soubor aktualizován
nevím jak moc seš zběhlý ve VBA takže až otevřeš sešit
kláv. zkratka "Alt + F11" co otevře okno s makrem
vlevo dvojklik na "List1" tam je celé makro, který danou proceduru provádí + přidal jsem jednoduché popisky.
Snad tě to nakopne
Nebo takhle
V listu "data" přidat, nebo měnit položky dle libosti.
Klidně se může přidat další sloupec jenom dbát na to, aby sloupce byly na stejném miste u obou listů.
viz přílohu
Ve vzorcích se moc nevyznám, ale ve VBA je to jednoduché.
Kde například nadefinovaná buňka je "C3"
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Range("C3").Value = Target.Value
End Sub
viz přílohu
Místo
PdfFile = PdfPath & ActiveCell & ".pdf"
nahradit ActiveCell => List1.Range("A1") viz níže
PdfFile = PdfPath & List1.Range("A1") & ".pdf"
upozornění: pokud používáš anglickou verzi MS Office tak List1 nahradit Sheet1, nebo napsat jenom Range ("A1")
@AL
Naštěstí já tak dobrý nejsem, aby mi někdo něco sliboval , ale každopádně není to fér jednání.
Lidi jsou někdy zvláštní, ale to už patří na jiné fórum a nechci tady spamovat
AL napsal/a:
To je ale náhodička Petr_Jak, predtým zvaný Mireek19, sa dnešným dňom prevtelil a odteraz je pre zmenu Mysakaka. No iste, samozrejme budú nasledovať rovnaké otázky, akože o čom je reč, viď. fešáku?
Mno tak já to chtěl zkusit, ale že to máš rozházený min. na třech listech s tím, že tam máš i nějaké svátky tak to jsem raději vzdal hned na začátku. fakt by to chtělo tu přílohu.
ahoj,
napadly mě dvě možnosti:
1. možnost (pomocí msgboxu)
Sub submitFeedback3()
Dim IE As Object
Public x As String
Dim retval As Integer
Application.ScreenUpdating = False
Set IE = CreateObject("InternetExplorer.Application")
IE.Visible = True
IE.Navigate "http://104.100.36.21/index.php"
Application.StatusBar = "Submitting"
' Wait while IE loading...
While IE.Busy
DoEvents
Wend
x = Cells(1, 1).Text
' **********************************************************************
'delay 5
retval = MsgBox("zmačkni enter pro pokračování", vbOKOnly)
IE.Document.getElementById("proc").Value = x
'**********************************************************************
Set IE = Nothing
Application.ScreenUpdating = True
End Sub
2. možnost (OnKey)
Dim x As String
Dim IE As Object
Sub submitFeedback4()
Application.ScreenUpdating = False
Set IE = CreateObject("InternetExplorer.Application")
IE.Visible = True
IE.Navigate "http://104.100.36.21/index.php"
Application.StatusBar = "Submitting"
' Wait while IE loading...
While IE.Busy
DoEvents
Wend
x = Cells(1, 1).Text
' **********************************************************************
'delay 5
Application.OnKey "{ENTER}", "Vypln"
Application.OnKey "~", "Vypln"
Application.OnKey "{ESCAPE}", "ResetTlac"
Exit Sub
' **********************************************************************
End Sub
Sub Vypln()
Call ResetTlac
IE.Document.getElementById("proc").Value = x
Set IE = Nothing
Application.ScreenUpdating = True
End Sub
Sub ResetTlac()
Application.OnKey "{ENTER}"
Application.OnKey "~"
Application.OnKey "{ESCAPE}"
End Sub
přikládám přepínání pomocí makra bez hyperlinků
Oblíbený formulář Faktura byl vylepšen a rozšířen.
Více se dočtete zde.
Používáte podnikový systém Helios iNuvio? Potřebujete pomoci se správou nebo vyvinout SQL proceduru? Více informací naleznete na stránce Helios iNuvio.