Just nu i M3-nätverket
Gå till innehåll

Behöver hjälp med hur man sparar i ny arbetsbok


taFFI

Rekommendera Poster

Skulle vilja ha hjälp med detta om någon kan förklara för mig.

Jag vill att det ska sparas kopieras/sparas i mappen( Documents\fak\1 09 mar) och inte som nu att den klistras in i själva Blad1(INVOICE PROGRAM) som är aktiv och sparas i mappen. Om ni kopierar koden i excelbladet så kanske förstår ni vad jag menar.

Själva macro koden ser ut så

 

 

 

Sub MyCopy()
Dim wbTarget As Workbook
Dim blKill As Boolean
Dim rnTarget As Range
Dim rnSource As Range
Dim fName As String
Dim myPath As String
Dim sht As Worksheet
blKill = False
myPath = "\\vmware-host\Shared Folders\Documents\fak\"
'om boken öppen, använd
On Error Resume Next
Set wbTarget = Workbooks("INVOICE PROGRAM.xlsm")
On Error GoTo 0
'annars öppna boken
If wbTarget Is Nothing Then
	Set wbTarget = Workbooks.Open(ThisWorkbook.Path & "\\vmware-host\Shared Folders\Documents\nytt\INVOICE PROGRAM.xlsm")
	blKill = True
End If
'hittta mål
With wbTarget.Worksheets("Blad1")
	'antar tabell som börjar i A1
	Set rnTarget = .Cells(.Range("A1").CurrentRegion.Rows.Count + 1, 1)
End With
'källan känd
Set rnSource = Blad1.Range("test")
'kopierar enbart värden
rnSource.Copy
rnTarget.PasteSpecial xlPasteValues
For Each sht In ThisWorkbook.Worksheets
If sht.Range("F1").Value <> "" Then
	sht.Copy
	With ActiveWorkbook
	.SaveAs myPath & ActiveSheet.Range("F1").Value & " " & Format(Date, "dd mmm") & ".xlsx"
	.Close
	End With
End If
Next sht
If blKill Then
	'stänger och sparar om vi var tvungna att öppna boken
	wbTarget.Close True
End If
'lite formalia
Application.CutCopyMode = False
End Sub

 

 

 

 

Hoppas någon go person kan förklara hur jag gör.

/Taffi

INVOICE PROGRAM.xlsx

Länk till kommentar
Dela på andra webbplatser

Hej,

 

Tycker det ser helt okej ut. Jag får själva sparandet att fungera på det sätt du har tänkt dig. Kör Excel 2003

 

 

Några saker att prova:

1. Byt ut path mot C:\ eller motsvarande för att säkerställa _

att det inte är någon specialare med er servermiljö.

2. Vad är det för faktiskt värde i cell F1? Något tecken som inte funkar att spara?

3. Skriv ut samtliga parametrar i en variabel eller msgbox så vi är säkra på att det inte är något med själva strängen, ex

mycheckpath = myPath & ActiveSheet.Range("F1").Value & " " & Format(Date, "dd mmm") & ".xlsx"

 

myPath = "\\vmware-host\Shared Folders\Documents\fak\"

 

With ActiveWorkbook

.SaveAs myPath & ActiveSheet.Range("F1").Value & " " & Format(Date, "dd mmm") & ".xlsx"

.Close

End With

 

Länk till kommentar
Dela på andra webbplatser

Hej,

 

Tycker det ser helt okej ut. Jag får själva sparandet att fungera på det sätt du har tänkt dig. Kör Excel 2003

 

 

Några saker att prova:

1. Byt ut path mot C:\ eller motsvarande för att säkerställa _

att det inte är någon specialare med er servermiljö.

2. Vad är det för faktiskt värde i cell F1? Något tecken som inte funkar att spara?

3. Skriv ut samtliga parametrar i en variabel eller msgbox så vi är säkra på att det inte är något med själva strängen, ex

mycheckpath = myPath & ActiveSheet.Range("F1").Value & " " & Format(Date, "dd mmm") & ".xlsx"

 

 

 

Hej,

Dessa som du har ställt ska jag förklara:)

1. Jag kör windows genom min mac så det är ingen server eller nått sånt.

2. F1 kan lika bra vara A1 för det är så att när jag sparar så kommer den sparas som faktura nr och mån ex 101 10 mar.

3. Den förstår jag inte vad du menar.

 

 

Det är så att den kopieras och sparas som jag vill, men jag vill inte att det som sparas ska inte klistra in i samma arbetsbok som man jobbar med. Sen vill jag även att den arbetsboken ska ställas som det var innan jag började jobba med det som sparas. För då kommer fram en nu fakturanr.

Hoppas du förstår vad jag menar.

 

MVH

Taffi

Länk till kommentar
Dela på andra webbplatser

Ok, jag trodde det var själva filhanteringen som var problemet.

 

 

1. Jag kör windows genom min mac så det är ingen server eller nått sånt.

 

2. Det är så att den kopieras och sparas som jag vill, men jag vill inte att det som sparas ska inte klistra in i samma arbetsbok som man jobbar med.

Sen vill jag även att den arbetsboken ska ställas som det var innan jag började jobba med det som sparas. För då kommer fram en nu fakturanr.

 

 

1. Okej, då utgår vi från att du får sparat på din mappade sökväg ok. Dvs dokumentet sparas på den angivna platsen. Jag hade dock föredragit en absolut sökväg om det är på den lokala datorn.

 

2. Då vill du alltså öppna en ny arbetsbok i ditt makro och skriva till den nya boken från makrot? Eller göra allt i makrodokumentet fast spara valda sidor när du är färdig?

 

Förslag:

Gör det du vill göra med makrot.

Om du startar från blad ett med knapp eller annat och inte vill ha med just den sidan till det färdiga dokumentet så kör enligt nedan?

Jag har kopierat inspelad kod, Monshi hjälper dig säkert om du vill ha bättre koll på adresseringar. :)

 


'Sheet1 tas bort
   Sheets("Sheet1").Select
   Cells.Select
   Selection.ClearContents
   Application.DisplayAlerts = False
   ActiveWindow.SelectedSheets.Delete
   Range("A1").Select

'Sheet 1 först
   Sheets("Sheet2").Select
   Sheets("Sheet2").Name = "Sheet1"
   Range("A1").Select
   Sheets("Sheet1").Select
   Sheets("Sheet1").Move After:=Sheets(2)


'Sparande av filen

   ActiveWorkbook.SaveAs Filename:=myPath & ActiveSheet.Range("F1").Value & " " & Format(Date, "dd mmm") & ".xlsx", FileFormat:=xlNormal

 

Det jag menade med punkt tre i mitt föregående inlägg är att det går att se lokalfönstret vad variabeln mycheckpath har för faktiskt värde när du stegar igenom makrot.

Länk till kommentar
Dela på andra webbplatser

Arkiverat

Det här ämnet är nu arkiverat och är stängt för ytterligare svar.

×
×
  • Skapa nytt...