Moi Expertit
Täällä on aikaisemmin ollut jonkun teistä kirjoittama makro " tallenna nimellä".
Onko mahdollista saada se uudelleen tänne ? ylläpito lienee poistanut.
Toivoisin kuitenkin muutosta jos onnistuu.
Tarve kahdelle makrolle
1. tallenna nimellä ja jos onnistuu sellainen joka toimii "template" mallipohjan kanssa ?
2. Jos mahdollista makrolla luoda toiseen asiakirjaan uusi rivi ja ja "templatesta" tuoda nimi millä tallenetaan ja päiväys.
Tavoite: Kun täytän mallipohjasta uutta asiakirjaa, täydentyy samalla toinen asiakirja (hakemisto). Kun teen uutta voin katsoa hakemistosta olenko jo tallentanut samalla nimellä.
XP officessa oli "template wizard" ominaisuus jolla pystyi luomaan database tiedoston, mutta office 2003 sitä ei ilmeisesti ole ? Template wizardilla pystyin suorittamaan yllämainitun toiminnon.
Etukäteen kiitos Teille
Paavali, Kunde, Excelit.fi
6
995
Vastaukset
- Excelit.fi
Joo, muistan että jossain vaiheessa laitoin listalle makron joka tallensi tiedoston soluun syötetyn tekstin nimiseksi. Ohessa makro joka tekee kyseisen toimenpiteen ja toinen makro joka tallentaa uuden tiedoston soluun syötetyn tekstin nimiseksi.
--------------------------
Sub TallennaTiedosto()
Dim Nimi As String
Nimi = Range("A1")
If Nimi = "" Then
MsgBox "Syötä nimi soluun A1"
Else
MsgBox "Tallennetaan tiedosto nimellä " & Nimi
ChDir "C:\"
ActiveWorkbook.SaveAs Filename:="C:\" & Nimi & ".xls", FileFormat:=xlNormal, _
Password:="", WriteResPassword:="", ReadOnlyRecommended:=False, _
CreateBackup:=False
End If
End Sub
Sub TallennaToinenTiedosto()
Dim Nimi As String
Nimi = Range("A2")
If Nimi = "" Then
MsgBox "Syötä nimi soluun A2"
Else
MsgBox "Luodaan uusi tiedosto ja tallennetaan tiedosto nimellä " & Nimi
Workbooks.Add
Range("A1").Select
Selection.EntireRow.Insert
MsgBox "Uusi rivi lisätty"
ActiveWorkbook.SaveAs Filename:="C:\" & Nimi & ".xls", FileFormat:=xlNormal, _
Password:="", WriteResPassword:="", ReadOnlyRecommended:=False, _
CreateBackup:=False
ActiveWorkbook.Save
ActiveWorkbook.Close
End If
End Sub- voitko auttaa
Kiitos vastauksesta.
Ei vielä vastannut ihan sitä mitä kaipaan, jos mahdollista vielä saada lisäapua ?
"ykkös" makro OK.
"kakkonen" toive on.
- osaa avata "hakemisto" nimisen taulukon
- lisää uuden rivin ( esim 2 riville )
- tallentaa nimellä "hakemisto"
- sulkee "hakemisto" taulukon.
eli aina kun käytän mallipohjaa, ykkösmakro ottaa asiakirjan nimen vaikka solusta a1 (otso) ja lisää päivämäärän ( onnistuu ehkä a1&date )
ja tallentaa oletushakemistoon.
kakkosmakro avaa "hakemisto" asiakirjan ja lisää sinne uuden rivin, johon tulee soluun a2 otso, b2 päiväys. - Excelit.fi
voitko auttaa kirjoitti:
Kiitos vastauksesta.
Ei vielä vastannut ihan sitä mitä kaipaan, jos mahdollista vielä saada lisäapua ?
"ykkös" makro OK.
"kakkonen" toive on.
- osaa avata "hakemisto" nimisen taulukon
- lisää uuden rivin ( esim 2 riville )
- tallentaa nimellä "hakemisto"
- sulkee "hakemisto" taulukon.
eli aina kun käytän mallipohjaa, ykkösmakro ottaa asiakirjan nimen vaikka solusta a1 (otso) ja lisää päivämäärän ( onnistuu ehkä a1&date )
ja tallentaa oletushakemistoon.
kakkosmakro avaa "hakemisto" asiakirjan ja lisää sinne uuden rivin, johon tulee soluun a2 otso, b2 päiväys.Sub TallennaTiedosto()
Range("B1").Select
ActiveCell.FormulaR1C1 = "=TODAY()"
Range("B1").Select
Selection.Copy
Selection.PasteSpecial Paste:=xlValues, Operation:=xlNone, SkipBlanks:= _
False, Transpose:=False
Dim Nimi As String
Dim Päiväys As Date
Dim Oletuskansio As String
Nimi = Range("A1")
Päiväys = ActiveCell.Value
Oletuskansio = ActiveWorkbook.Path
If Nimi = "" Then
MsgBox "Syötä nimi soluun A1"
Else
MsgBox "Tallennetaan tiedosto nimellä " & Nimi & " " & Päiväys & ".xls"
Application.DisplayAlerts = False
ChDir Oletuskansio
ActiveWorkbook.SaveAs Filename:=Oletuskansio & "\" & Nimi & " " & Päiväys & ".xls", FileFormat:=xlNormal, _
Password:="", WriteResPassword:="", ReadOnlyRecommended:=False, _
CreateBackup:=False
End If
End Sub
Sub TallennaToinenTiedosto()
Dim Nimi As String
Dim Oletuskansio As String
Nimi = Range("A1")
Oletuskansio = ActiveWorkbook.Path
If Nimi = "" Then
MsgBox "Syötä nimi soluun A1"
Else
ChDir Oletuskansio
Workbooks.Open Filename:=Oletuskansio & "\Hakemisto.xls"
Range("A2").Select
Selection.EntireRow.Insert
ActiveCell.FormulaR1C1 = Nimi
Range("B2").Select
ActiveCell.FormulaR1C1 = "=TODAY()"
Dim Päiväys As Date
Päiväys = ActiveCell.Value
Range("A2:B2").Select
Selection.Copy
Selection.PasteSpecial Paste:=xlValues, Operation:=xlNone, SkipBlanks:= _
False, Transpose:=False
Range("A1").Select
Application.CutCopyMode = False
MsgBox "Lisätty rivi 2, solu A2 = " & Nimi & ", solu B2= " & Päiväys
ActiveWorkbook.Save
ActiveWorkbook.Close
Range("A1").Select
End If
End Sub - sama
Excelit.fi kirjoitti:
Sub TallennaTiedosto()
Range("B1").Select
ActiveCell.FormulaR1C1 = "=TODAY()"
Range("B1").Select
Selection.Copy
Selection.PasteSpecial Paste:=xlValues, Operation:=xlNone, SkipBlanks:= _
False, Transpose:=False
Dim Nimi As String
Dim Päiväys As Date
Dim Oletuskansio As String
Nimi = Range("A1")
Päiväys = ActiveCell.Value
Oletuskansio = ActiveWorkbook.Path
If Nimi = "" Then
MsgBox "Syötä nimi soluun A1"
Else
MsgBox "Tallennetaan tiedosto nimellä " & Nimi & " " & Päiväys & ".xls"
Application.DisplayAlerts = False
ChDir Oletuskansio
ActiveWorkbook.SaveAs Filename:=Oletuskansio & "\" & Nimi & " " & Päiväys & ".xls", FileFormat:=xlNormal, _
Password:="", WriteResPassword:="", ReadOnlyRecommended:=False, _
CreateBackup:=False
End If
End Sub
Sub TallennaToinenTiedosto()
Dim Nimi As String
Dim Oletuskansio As String
Nimi = Range("A1")
Oletuskansio = ActiveWorkbook.Path
If Nimi = "" Then
MsgBox "Syötä nimi soluun A1"
Else
ChDir Oletuskansio
Workbooks.Open Filename:=Oletuskansio & "\Hakemisto.xls"
Range("A2").Select
Selection.EntireRow.Insert
ActiveCell.FormulaR1C1 = Nimi
Range("B2").Select
ActiveCell.FormulaR1C1 = "=TODAY()"
Dim Päiväys As Date
Päiväys = ActiveCell.Value
Range("A2:B2").Select
Selection.Copy
Selection.PasteSpecial Paste:=xlValues, Operation:=xlNone, SkipBlanks:= _
False, Transpose:=False
Range("A1").Select
Application.CutCopyMode = False
MsgBox "Lisätty rivi 2, solu A2 = " & Nimi & ", solu B2= " & Päiväys
ActiveWorkbook.Save
ActiveWorkbook.Close
Range("A1").Select
End If
End SubMoi ja kiitos tähänastisesta, alkaa pelittää, hiukan pientä fiksausta vielä kaipaan.
miten saan ekan makron ottamaan nimen useammasta solusta esim. a1 ja b2 ja c2....päiväyksen olen siirtänyyt d2.
tavoite : otso_pekka_pyörä_ päiväys.
eli kenelle tehty = otso ( a1)
kuka tehnyt = pekka (b2)
mitä tehnyt = pyörä (c2)
koska = päiväys (d2)
ja hakemistoon tulisi sama otso_pekka_pyörä_päiväys - Excelit.fi
sama kirjoitti:
Moi ja kiitos tähänastisesta, alkaa pelittää, hiukan pientä fiksausta vielä kaipaan.
miten saan ekan makron ottamaan nimen useammasta solusta esim. a1 ja b2 ja c2....päiväyksen olen siirtänyyt d2.
tavoite : otso_pekka_pyörä_ päiväys.
eli kenelle tehty = otso ( a1)
kuka tehnyt = pekka (b2)
mitä tehnyt = pyörä (c2)
koska = päiväys (d2)
ja hakemistoon tulisi sama otso_pekka_pyörä_päiväysSub TallennaTiedosto()
Range("D2").Select
ActiveCell.FormulaR1C1 = "=TODAY()"
Range("D2").Select
Selection.Copy
Selection.PasteSpecial Paste:=xlValues, Operation:=xlNone, SkipBlanks:= _
False, Transpose:=False
Dim Nimi As String
Dim Kuka As String
Dim Mitä As String
Dim Päiväys As Date
Dim Oletuskansio As String
Nimi = Range("A1")
Kuka = Range("B2")
Mitä = Range("C2")
Päiväys = ActiveCell.Value
Oletuskansio = ActiveWorkbook.Path
If Nimi = "" Then
MsgBox "Syötä nimi soluun A1"
Else
MsgBox "Tallennetaan tiedosto nimellä " & Nimi & "_" & Kuka & "_" & Mitä & "_" & Päiväys & ".xls"
Application.DisplayAlerts = False
ChDir Oletuskansio
ActiveWorkbook.SaveAs Filename:=Oletuskansio & "\" & Nimi & "_" & Kuka & "_" & Mitä & "_" & Päiväys & ".xls", FileFormat:=xlNormal, _
Password:="", WriteResPassword:="", ReadOnlyRecommended:=False, _
CreateBackup:=False
End If
End Sub
Sub TallennaToinenTiedosto()
Range("D2").Select
ActiveCell.FormulaR1C1 = "=TODAY()"
Range("D2").Select
Selection.Copy
Selection.PasteSpecial Paste:=xlValues, Operation:=xlNone, SkipBlanks:= _
False, Transpose:=False
Dim Nimi As String
Dim Kuka As String
Dim Mitä As String
Dim Päiväys As Date
Dim Oletuskansio As String
Nimi = Range("A1")
Kuka = Range("B2")
Mitä = Range("C2")
Päiväys = ActiveCell.Value
Oletuskansio = ActiveWorkbook.Path
If Nimi = "" Then
MsgBox "Syötä nimi soluun A1"
Else
ChDir Oletuskansio
Workbooks.Open Filename:=Oletuskansio & "\Hakemisto.xls"
Range("A2").Select
Selection.EntireRow.Insert
Range("A2").Select
ActiveCell.FormulaR1C1 = Nimi & "_" & Kuka & "_" & Mitä & "_" & Päiväys
Range("A1").Select
Application.CutCopyMode = False
MsgBox "Lisätty rivi 2, solu A2 = " & Nimi & "_" & Kuka & "_" & Mitä & "_" & Päiväys
ActiveWorkbook.Save
ActiveWorkbook.Close
Range("A1").Select
End If
End Sub - autettu
Excelit.fi kirjoitti:
Sub TallennaTiedosto()
Range("D2").Select
ActiveCell.FormulaR1C1 = "=TODAY()"
Range("D2").Select
Selection.Copy
Selection.PasteSpecial Paste:=xlValues, Operation:=xlNone, SkipBlanks:= _
False, Transpose:=False
Dim Nimi As String
Dim Kuka As String
Dim Mitä As String
Dim Päiväys As Date
Dim Oletuskansio As String
Nimi = Range("A1")
Kuka = Range("B2")
Mitä = Range("C2")
Päiväys = ActiveCell.Value
Oletuskansio = ActiveWorkbook.Path
If Nimi = "" Then
MsgBox "Syötä nimi soluun A1"
Else
MsgBox "Tallennetaan tiedosto nimellä " & Nimi & "_" & Kuka & "_" & Mitä & "_" & Päiväys & ".xls"
Application.DisplayAlerts = False
ChDir Oletuskansio
ActiveWorkbook.SaveAs Filename:=Oletuskansio & "\" & Nimi & "_" & Kuka & "_" & Mitä & "_" & Päiväys & ".xls", FileFormat:=xlNormal, _
Password:="", WriteResPassword:="", ReadOnlyRecommended:=False, _
CreateBackup:=False
End If
End Sub
Sub TallennaToinenTiedosto()
Range("D2").Select
ActiveCell.FormulaR1C1 = "=TODAY()"
Range("D2").Select
Selection.Copy
Selection.PasteSpecial Paste:=xlValues, Operation:=xlNone, SkipBlanks:= _
False, Transpose:=False
Dim Nimi As String
Dim Kuka As String
Dim Mitä As String
Dim Päiväys As Date
Dim Oletuskansio As String
Nimi = Range("A1")
Kuka = Range("B2")
Mitä = Range("C2")
Päiväys = ActiveCell.Value
Oletuskansio = ActiveWorkbook.Path
If Nimi = "" Then
MsgBox "Syötä nimi soluun A1"
Else
ChDir Oletuskansio
Workbooks.Open Filename:=Oletuskansio & "\Hakemisto.xls"
Range("A2").Select
Selection.EntireRow.Insert
Range("A2").Select
ActiveCell.FormulaR1C1 = Nimi & "_" & Kuka & "_" & Mitä & "_" & Päiväys
Range("A1").Select
Application.CutCopyMode = False
MsgBox "Lisätty rivi 2, solu A2 = " & Nimi & "_" & Kuka & "_" & Mitä & "_" & Päiväys
ActiveWorkbook.Save
ActiveWorkbook.Close
Range("A1").Select
End If
End SubMoi
Kiitos Excelitille
makro toimii, hiukan muutin solu osoitteita, mutta nyt pelittää...
Ketjusta on poistettu 0 sääntöjenvastaista viestiä.
Luetuimmat keskustelut
Virkamiehille tarvitaan tuntuvat palkankorotukset
Naistenpäivänä on syytä muistuttaa, että virkamiehen euro on vain 80 senttiä. Palkat tulee saattaa samalle tasolle yksi373645Riikka Purran kaudella nousi bensan hinta yli 2 euron
Muistatteko kuinka edellisen vasemmistohallituksen aikana, ns. Marinin aikakaudella, bensiiniä sai 1,3 euron litrahinnal253202- 652845
Olisipa saanut sinuun
Tutustua paremmin. Harmi että aloin lopulta jännittämään kun näytit tunteesi niin voimakkaasti ja lähestyit niin voimaak792633- 351718
Mitäs nyt sijoittajat?
Pörssit laskevat maailmalla Iranin sodan takia ja muutenkin ovat olleet Trumpin vallan alla epävarmat. Ainoa, mikä on no801660- 281487
- 151455
Olisitpa se hellä
Ja herkkä minkä kuvan sain sinusta irl. Haluaisin että elämässäni olisi sellainen joka arvostaa minua juuri sellaisena k231444- 271415