Jag skulle vilja ha nån form av automatisering i excel som kan ändra datum och dagar beroende på månad. Titta på funktionen DATEPART. Tack för ett bra svar.. frågan kvarstår hur jag ska implementera detta i Excel. Det är bara att skriva in koden i VBA-editorn. Gör den första funktionenVB-Script i Excel ?
Alltså, som överskrift ska det stå t.ex. Januari 2002 och under ska det vara två celler A1-A35 som inehåller datum 1- 31 och B1-B35 som inehåller namn på dagarna.
Överskriften ska alltså påverka dagarna, varje månad ska börja med datum 1 och sen ska alltså dagens namn stämma med datum och månad..
Med andra ord, när man ändrar överskriften (månadens namn) ska alltså dagarna (dom som står i B1-B35) ändras automatiskt så dom överenstämmer med datumen (som står i A1-A35).
Oj det kanske blev lite invecklat.. :)
Men ni kan ju alltid skicka ett e-mail till bengan@brevet.nu
Om någon trevlig själ med tid över kan fixa detta så blir jag överlycklig.
ps. om det sedan stämmer med andra årtal, så är det en extra bonus.. :)Sv: VB-Script i Excel ?
För att få antalet dagar är det rätt enkelt (utom för februari - men det
har diskuterats här tidigare och om inte jag missminner mig kom
någon fram till en bra kodsnutt) - använd en SELECT CASE
ex:
<code>
PRIVATE FUNCTION antalDagar (manad as integer, ar as integer) as integer
dim antal as integer
SELECT manad
CASE 1,3,5,7,8,10,12
antal = 31
CASE 2
antal = hamtaFebruari(ar) 'förslagsvis en funktion som returnerar antalet dagar i februari utifrån skottår, år och annat roligt
CASE ELSE
antal = 30
END SELECT
antalDagar = antal
END FUNCTION
PRIVATE SUB skrivUtDatum()
dim datum as string, datumnamn as string
dim dag as integer, ar as integer, manadnr as integer
ar = cint(text1.text)
manad = cint(text2.text) 'eller var din månad och år nu står...
for i = 1 to antaldagar(manad)
datum = ar & manadnr & dag
datumnamn = DATEPART(w, datum)
'skriv ut
next i
END SUB
/Emma
</code>Sv: VB-Script i Excel ?
Jag är hemma i VB, men inte i Excel. :)
/BenganSv: VB-Script i Excel ?
(den som ska kunna anropas med ett kortkommando eller innifrån
makromenyn) public, de som inte ska kunna anropas utifrån gör du
privata.
/Emma