Pystyykö Excel tekemään tallennettaessa automaattisesti uuden kansion, jonkin solussa olevan tekstin tms. nimiseksi..
Esim.:
Pääkansio
__Mallitiedosto.xls
Tiedostoa Mallitiedosto.xls käytetään ainoastaan uusien dokumenttien luomiseen, eikä sen päälle tallenneta mitään..
Excelin pitäisi tallentaa tiedosto automaattisesti tiettyjen solujen mukaan..
Esim.
C6_____E6______G6_____I6_____M12
KQ_____873_____C2T7___1245___2005-04-17
Pääkansio (KANSIO)
__Mallitiedosto.xls (MALLITIEDOSTO)
____KQ873C2T71245 (EXCELIN LUOMA KANSIO C6:I6)
______2005-04-17.xls (EXCELIN LUOMA TIEDOSTO M12)
Pienenä lisähaasteena vielä sellainen, että jossain tapauksissa C6:I6 informaatio on sama, jolloin Excelin pitäisi tehdä vain tuo päivämäärän mukainen tiedosto C6:I6- kansioon.. Eli vain M12- informaatio muuttuu..
Esim.
C6_____E6_____G6_____I6_____M12
KQ_____873____C2T7___1245___2005-04-18
Jolloin C6:I6- kansioon tulee tuo yksi päivämäärätiedosto lisää..
Pääkansio (KANSIO)
__Mallitiedosto.xls (MALLITIEDOSTO)
____KQ873C2T71245 (EXCELIN LUOMA KANSIO C6:I6)
______2005-04-17.xls (EXCELIN LUOMA TIEDOSTO M12)
______2005-04-18.xls (EXCELIN LUOMA TIEDOSTO M12)
Esim.:
Pääkansio
__Mallitiedosto.xls
Tiedostoa Mallitiedosto.xls käytetään ainoastaan uusien dokumenttien luomiseen, eikä sen päälle tallenneta mitään..
Excelin pitäisi tallentaa tiedosto automaattisesti tiettyjen solujen mukaan..
Esim.
C6_____E6______G6_____I6_____M12
KQ_____873_____C2T7___1245___2005-04-17
Pääkansio (KANSIO)
__Mallitiedosto.xls (MALLITIEDOSTO)
____KQ873C2T71245 (EXCELIN LUOMA KANSIO C6:I6)
______2005-04-17.xls (EXCELIN LUOMA TIEDOSTO M12)
Pienenä lisähaasteena vielä sellainen, että jossain tapauksissa C6:I6 informaatio on sama, jolloin Excelin pitäisi tehdä vain tuo päivämäärän mukainen tiedosto C6:I6- kansioon.. Eli vain M12- informaatio muuttuu..
Esim.
C6_____E6_____G6_____I6_____M12
KQ_____873____C2T7___1245___2005-04-18
Jolloin C6:I6- kansioon tulee tuo yksi päivämäärätiedosto lisää..
Pääkansio (KANSIO)
__Mallitiedosto.xls (MALLITIEDOSTO)
____KQ873C2T71245 (EXCELIN LUOMA KANSIO C6:I6)
______2005-04-17.xls (EXCELIN LUOMA TIEDOSTO M12)
______2005-04-18.xls (EXCELIN LUOMA TIEDOSTO M12)
Vastaukset 6
Vanhimmat
A1=Pääkansion osoite ilman \-viivaa
Sub Tallenna()
Dim Polku As String
Application.DisplayAlerts = False
On Error GoTo virhe
Polku = Range("A1") & "\" & Range("C6") & Range("E6") & Range("G6") _
& Range("I6") & "\"
ChDir Polku
ActiveWorkbook.SaveAs Filename:=Polku & Range("M12").Text & (".XLS")
Application.DisplayAlerts = True
Exit Sub
virhe:
MkDir Polku
Resume Next
End Sub
Vielä pitäis saada asiakirjaan sellainen nappi, että sitä painamalla työkirja tallentuu minne pitääkin.. Eli nappi suorittaa tuon makron..
..ja jos mahdollista, niin olisi kiva jos asiakirjasta saisi disabloitua tuon "Tallenna" ja "Tallenna nimellä"- napin.. Eli ne harmaiksi, jolloin ainoastaan napin käyttäminen olisi mahdollista..
Olisiko vielä mahdollista saada sellainen ennen tuon tallennuksen suorittamista, että jos solussa "B1" ei ole mitään tekstiä, niin tulee popuppi jossa lukee esim. "Lisää kirjoittaja".. ja samoin jos solusta M6 puuttuu päivämäärä, niin tulee popuppi, jossa lukee Lisää päivämäärä.. Eikä tallennusta tapahdu ennen kuin nuo on kunnossa..
Nappi onnistui.. Muut vielä puuttuu..
Jos joku tietää mistä löytyisi netistä joku kattava saitti Excelin VBA projektien luomiseen, niin olisin kiitollinen.. Ei tarvisi kaikkea täältä kysellä..
Kisää allaolevat makrot moduuliin
ja tarkasta oliko se nyt B1 se solu...
Sub Auto_Open()
With CommandBars("File")
.Controls(4).Enabled = False 'Tallenna
.Controls(5).Enabled = False 'Tallenna nimellä
.Controls(15).Enabled = False 'Tulosta
End With
End Sub
Sub Auto_Close()
With CommandBars("File")
.Controls(4).Enabled = True 'Tallenna
.Controls(5).Enabled = True 'Tallenna nimellä
.Controls(15).Enabled = True 'Tulosta
End With
End Sub
Sub Tallenna()
Dim Polku As String
Application.DisplayAlerts = False
On Error GoTo virhe
If Range("B1") = "" Then
MsgBox "Lisää kirjoittaja", vbInformation, "Tietoja puuttuu"
End If
If Range("M6") = "" Then
MsgBox "Lisää päivämäärä", vbInformation, "Tietoja puuttuu"
End If
Polku = Range("A1") & "\" & Range("C6") & Range("E6") & Range("G6") _
& Range("I6") & "\"
ChDir Polku
ActiveWorkbook.SaveAs Filename:=Polku & Range("M12").Text & (".XLS")
Application.DisplayAlerts = True
Exit Sub
virhe:
MkDir Polku
Resume Next
End Sub
Kiitos erittäin paljon.. Nyt toimii niin kuin pitääkin..