ciao raga
mi sono incartato, mi date una mano a risolvere
devo inserire in 12 label mese ed anno incrementando di un mese dalla data attuale
esempio data attuale 07/12/2019
Label1.caption = Format(Date(Now), "mm/yyyy")
nella label1 mi da "12/2019"
nella label2 mi deve dare "01/2020"
nella label3 mi deve dare "02/2020"
e cosi via
dalla label2 in poi come faccio ad incrementare di un mese Format(Date(Now), "mm/yyyy")?
grazie vuott
pensavo che ci fosse un modo più veloce, ma dato che a me serve solo creare stringhe ho risolto alla vecchia maniera.
select case e un po di codice scritto
Private Sub CalcolaMese()
Dim mese As Integer
Dim anno As Integer
mese = Month(DateBox1.value)
anno = Year(DateBox1.value)
MyMese.Clear
Select Case mese
Case 1
MyMese.Add("01/" & anno)
MyMese.Add("02/" & anno)
MyMese.Add("03/" & anno)
MyMese.Add("04/" & anno)
MyMese.Add("05/" & anno)
MyMese.Add("06/" & anno)
MyMese.Add("07/" & anno)
MyMese.Add("08/" & anno)
MyMese.Add("09/" & anno)
MyMese.Add("10/" & anno)
MyMese.Add("11/" & anno)
MyMese.Add("12/" & anno)
Case 2
MyMese.Add("02/" & anno)
MyMese.Add("03/" & anno)
MyMese.Add("04/" & anno)
MyMese.Add("05/" & anno)
MyMese.Add("06/" & anno)
MyMese.Add("07/" & anno)
MyMese.Add("08/" & anno)
MyMese.Add("09/" & anno)
MyMese.Add("10/" & anno)
MyMese.Add("11/" & anno)
MyMese.Add("12/" & anno)
MyMese.Add("01/" & (anno + 1))
Case 3
MyMese.Add("03/" & anno)
MyMese.Add("04/" & anno)
MyMese.Add("05/" & anno)
MyMese.Add("06/" & anno)
MyMese.Add("07/" & anno)
MyMese.Add("08/" & anno)
MyMese.Add("09/" & anno)
MyMese.Add("10/" & anno)
MyMese.Add("11/" & anno)
MyMese.Add("12/" & anno)
MyMese.Add("01/" & (anno + 1))
MyMese.Add("02/" & (anno + 1))
Case 4
MyMese.Add("04/" & anno)
MyMese.Add("05/" & anno)
MyMese.Add("06/" & anno)
MyMese.Add("07/" & anno)
MyMese.Add("08/" & anno)
MyMese.Add("09/" & anno)
MyMese.Add("10/" & anno)
MyMese.Add("11/" & anno)
MyMese.Add("12/" & anno)
MyMese.Add("01/" & (anno + 1))
MyMese.Add("02/" & (anno + 1))
MyMese.Add("03/" & (anno + 1))
Case 5
MyMese.Add("05/" & anno)
MyMese.Add("06/" & anno)
MyMese.Add("07/" & anno)
MyMese.Add("08/" & anno)
MyMese.Add("09/" & anno)
MyMese.Add("10/" & anno)
MyMese.Add("11/" & anno)
MyMese.Add("12/" & anno)
MyMese.Add("01/" & (anno + 1))
MyMese.Add("02/" & (anno + 1))
MyMese.Add("03/" & (anno + 1))
MyMese.Add("04/" & (anno + 1))
Case 6
MyMese.Add("06/" & anno)
MyMese.Add("07/" & anno)
MyMese.Add("08/" & anno)
MyMese.Add("09/" & anno)
MyMese.Add("10/" & anno)
MyMese.Add("11/" & anno)
MyMese.Add("12/" & anno)
MyMese.Add("01/" & (anno + 1))
MyMese.Add("02/" & (anno + 1))
MyMese.Add("03/" & (anno + 1))
MyMese.Add("04/" & (anno + 1))
MyMese.Add("05/" & (anno + 1))
Case 7
MyMese.Add("07/" & anno)
MyMese.Add("08/" & anno)
MyMese.Add("09/" & anno)
MyMese.Add("10/" & anno)
MyMese.Add("11/" & anno)
MyMese.Add("12/" & anno)
MyMese.Add("01/" & (anno + 1))
MyMese.Add("02/" & (anno + 1))
MyMese.Add("03/" & (anno + 1))
MyMese.Add("04/" & (anno + 1))
MyMese.Add("05/" & (anno + 1))
MyMese.Add("06/" & (anno + 1))
Case 8
MyMese.Add("08/" & anno)
MyMese.Add("09/" & anno)
MyMese.Add("10/" & anno)
MyMese.Add("11/" & anno)
MyMese.Add("12/" & anno)
MyMese.Add("01/" & (anno + 1))
MyMese.Add("02/" & (anno + 1))
MyMese.Add("03/" & (anno + 1))
MyMese.Add("04/" & (anno + 1))
MyMese.Add("05/" & (anno + 1))
MyMese.Add("06/" & (anno + 1))
MyMese.Add("07/" & (anno + 1))
Case 9
MyMese.Add("09/" & anno)
MyMese.Add("10/" & anno)
MyMese.Add("11/" & anno)
MyMese.Add("12/" & anno)
MyMese.Add("01/" & (anno + 1))
MyMese.Add("02/" & (anno + 1))
MyMese.Add("03/" & (anno + 1))
MyMese.Add("04/" & (anno + 1))
MyMese.Add("05/" & (anno + 1))
MyMese.Add("06/" & (anno + 1))
MyMese.Add("07/" & (anno + 1))
MyMese.Add("08/" & (anno + 1))
Case 10
MyMese.Add("10/" & anno)
MyMese.Add("11/" & anno)
MyMese.Add("12/" & anno)
MyMese.Add("01/" & (anno + 1))
MyMese.Add("02/" & (anno + 1))
MyMese.Add("03/" & (anno + 1))
MyMese.Add("04/" & (anno + 1))
MyMese.Add("05/" & (anno + 1))
MyMese.Add("06/" & (anno + 1))
MyMese.Add("07/" & (anno + 1))
MyMese.Add("08/" & (anno + 1))
MyMese.Add("09/" & (anno + 1))
Case 11
MyMese.Add("11/" & anno)
MyMese.Add("12/" & anno)
MyMese.Add("01/" & (anno + 1))
MyMese.Add("02/" & (anno + 1))
MyMese.Add("03/" & (anno + 1))
MyMese.Add("04/" & (anno + 1))
MyMese.Add("05/" & (anno + 1))
MyMese.Add("06/" & (anno + 1))
MyMese.Add("07/" & (anno + 1))
MyMese.Add("08/" & (anno + 1))
MyMese.Add("09/" & (anno + 1))
MyMese.Add("10/" & (anno + 1))
Case 12
MyMese.Add("12/" & anno)
MyMese.Add("01/" & (anno + 1))
MyMese.Add("02/" & (anno + 1))
MyMese.Add("03/" & (anno + 1))
MyMese.Add("04/" & (anno + 1))
MyMese.Add("05/" & (anno + 1))
MyMese.Add("06/" & (anno + 1))
MyMese.Add("07/" & (anno + 1))
MyMese.Add("08/" & (anno + 1))
MyMese.Add("09/" & (anno + 1))
MyMese.Add("10/" & (anno + 1))
MyMese.Add("11/" & (anno + 1))
End Select
End
by alla prossima
Ciao mi sono trovato ad affrontare più o meno lo stesso problema il seguente è un test di prova
Public Sub ComboBox1_Click()
Dim gdate As String
gdate = Format(DateAdd(Date, gb.day, CInt(ComboBox1.Text)), "yyyy-mm-dd hh-nn-ss")
Label1.Text = gdate
End
nel combobox inserisci numeri da 10 a 30 in label1 viene restituita la data
il seguente è il calcolo dell'anno bisestile
Public Function anno_bisestile(anbis As Integer) As Boolean
'calcolo anno bisestile
Dim bisestile As Boolean
If Right$(CStr(anbis), 2) = "00" And Frac(anbis / 400) = 0 Then
bisestile = True
Else If Right$(CStr(anbis), 2) <> "00" And Frac(anbis / 4) = 0 Then
bisestile = True
Else
bisestile = False
End If
Return bisestile
End
:ciao:
Puoi usare anche MOD:
If Right$(CStr(anbis), 2) = "00" And anbis MOD 400 = 0 Then
bisestile = True
Else If Right$(CStr(anbis), 2) <> "00" And anbis MOD 4 = 0 Then
bisestile = True
Else
bisestile = False
End If