03. september 2003 - 13:52
Der er
31 kommentarer og 1 løsning
kommasepareret fil
Jeg skal bruge en knap, der markerer et dataområde, opretter et nyt ark, og lægger dataene over i der, for at gemme arket som csv-fil. Problemet er, at jeg gerne vil have fjernet dette ark, når filen er gemt, så man er tilbage i det oprindelige billede. Men når jeg trykker på knappen, kommer den med denne fejl: "Kørselsfejl 1004". Metoden Select for klassen Range Mislykkedes. Hvad er der galt med nedenstående? ---------------------------------- Private Sub CommandButton4_Click() Range("B8:E38").Select Selection.Copy Sheets("Ark1").Select Sheets.Add Range("B8").Select ActiveSheet.Paste Sheets("Ark2").Select Application.CutCopyMode = False ActiveSheet.SaveAs Filename:="c:\timeregistrering\data", FileFormat:=xlCSV Sheets("Ark1").Select Sheets("Ark2").delete Range("B8").Select End Sub
Annonceindlæg fra inspirit365
03. september 2003 - 14:04
#1
Prøv at rette til: ActiveSheet.Range("B8").Select
03. september 2003 - 14:13
#2
Prøv denne kode. :-) Private Sub CommandButton4_Click() Application.DisplayAlerts = False Application.ScreenUpdating = False Range("B8:E38").Select Selection.Copy Sheets("Ark1").Select Sheets.Add ActiveSheet.Name = "data" ActiveSheet.Range("B8").Select ActiveSheet.Paste Application.CutCopyMode = False ActiveSheet.SaveAs FileName:="c:\timeregistrering\data", FileFormat:=xlCSV Sheets("Ark1").Select Sheets("data").Delete Range("B8").Select Application.ScreenUpdating = True Application.DisplayAlerts = False End Sub
03. september 2003 - 14:17
#3
Det virker desværre ikke.
03. september 2003 - 14:18
#4
arg nu roder jeg i det. kom til at trykke accepter, men ville trykke udfør... så fobian et øjeblik, så skal jeg teste det. jkrons skulle ikke have haft point...
03. september 2003 - 14:18
#5
Du får dem bare tilbage :-)
03. september 2003 - 14:20
#6
fobian, det virker heller ikke. Men får ny fejlmeddelelse. Metoden SaveAs for klassen Worksheet mislykkedes
03. september 2003 - 14:24
#7
03. september 2003 - 14:24
#8
ActiveSheet.SaveAs FileName:="c:\timeregistrering\data", FileFormat:=xlCSV, CreateBackup:=False Prøv at skrive sådan istedet
03. september 2003 - 14:25
#9
udviklingskonsulenten-> Jeg kigger på det.
03. september 2003 - 14:28
#10
Hej, Problemet er at det nye ark ikke hedder det samme hvergang. Men det jeg gør her er at tilføje det nye ark som det sidste og så bruger jeg ark tælleren til at fange det igen. Jeg har slået DisplayAlerts fra, da den ellers kommer og spørger om du vil slette arket igen. Jeg hhåber det kan bruges. :) -------------------------------------- Private Sub CommandButton4_Click() Range("B8:E38").Select Selection.Copy Sheets("Ark1").Select Sheets.Add After:=Sheets(Sheets.Count) Range("B8").Select ActiveSheet.Paste Sheets(Sheets.Count).Select Application.CutCopyMode = False ActiveSheet.SaveAs Filename:="c:\timeregistrering\data", FileFormat:=xlCSV Sheets("Ark1").Select Application.DisplayAlerts = False Sheets(Sheets.Count).Delete Application.DisplayAlerts = True Range("B8").Select End Sub
03. september 2003 - 14:32
#11
Hverken x-masman's eller zogu's virker :(
03. september 2003 - 14:38
#12
Er du sikker på at du har oprettet en mappe, som hedder timeregistrering på dit c: drev. Det skal der være før koden virker. Det virker fint hos mig :-)
03. september 2003 - 14:42
#13
er det ikke fordi at du skal bruge ActiveWorkbook.saveas?
03. september 2003 - 14:42
#14
Den her virker med garanti. Private Sub CommandButton4_Click() Sheets("Ark1").Select Range("B8:E38").Select Selection.Copy Sheets.Add After:=Sheets(Sheets.Count) Sheets(Sheets.Count).Select Range("B8").Select ActiveSheet.Paste Application.CutCopyMode = False ActiveSheet.SaveAs Filename:="c:\timeregistrering\data", FileFormat:=xlCSV Sheets("Ark1").Select Application.DisplayAlerts = False Sheets(Sheets.Count).Delete Application.DisplayAlerts = True Range("B8").Select End Sub
03. september 2003 - 14:43
#15
x-masman nej jeg skal ikke bruge activeworkbook, da det kun er dataene i det nye ark der skal gemmes.
03. september 2003 - 14:50
#16
fobian - jeg har oprettet mappen på mit c-drev, og hvis den ikke var, har jeg sikret mig det, gennem det her: If Dir("c:\timeregistrering", vbDirectory) = "" Then MkDir "c:\timeregistrering"
03. september 2003 - 14:54
#17
Acw, jeg har testet proceduren jeg har lagt op, og får en fin Data.csv fil. med de test data jeg har sat op. Hvis det stadig ikke virker, så prøv at omdøb dit Ark1 til Timer og brug det navn istedet. /zogu
03. september 2003 - 14:58
#18
Jeg fatter det ikke...ligemeget hvad jeg gør, kommer den med fejl.
03. september 2003 - 15:04
#20
ja, den virker upåklageligt.
03. september 2003 - 15:06
#21
Så kør lige din egen og skriv hvad du får for en fejl.
03. september 2003 - 15:11
#22
Altså, når jeg trykker på knappen, og bruger den kode du har skrevet herinde, kommer denne fejl: Kørselsfejl 1004. Metoden Range for klassen select mislykkedes.
03. september 2003 - 15:16
#23
Har du placeret din kode i et selvstændigt modul eller i ark-modulet?
03. september 2003 - 15:16
#24
Strange, prøv at smid din procedure her ind igen. som den ser ud nu.
03. september 2003 - 15:18
#25
Koden må vel ligge på knappen.
03. september 2003 - 15:20
#26
Sub CommandButton4_Click() If Dir("c:\timeregistrering", vbDirectory) = "" Then MkDir "c:\timeregistrering" Sheets("Timer").Select Range("B8:E38").Select Selection.Copy Sheets.Add After:=Sheets(Sheets.Count) Sheets(Sheets.Count).Select Range("B8").Select ActiveSheet.Paste Application.CutCopyMode = False ActiveSheet.SaveAs FileName:="c:\timeregistrering\data", FileFormat:=xlCSV Sheets("Timer").Select Application.DisplayAlerts = False Sheets(Sheets.Count).delete Application.DisplayAlerts = True Range("B8").Select End Sub
03. september 2003 - 15:20
#27
Kan det have noget at sige at min Excel er engelsk og acw bruger dansk excel ?
03. september 2003 - 15:21
#28
fobian - jeg har prøvet begge dele. I selvstændigt sker der ingenting når jeg trykker, og når den står i ark-modul, får jeg fejl. Det er nok heromkring der skal ledes efter en løsning, da jeg kan se at zogu's ligger i modul.
03. september 2003 - 15:26
#29
Hos mig virker det upåklageligt med dette: If Dir("c:\timeregistrering", vbDirectory) = "" Then MkDir "c:\timeregistrering" Sheets("Timer").Select ActiveSheet.Range("B8:E38").Select Selection.Copy Sheets.Add After:=Sheets(Sheets.Count) Sheets(Sheets.Count).Select ActiveSheet.Range("B8").Select ActiveSheet.Paste Application.CutCopyMode = False ActiveSheet.SaveAs Filename:="c:\timeregistrering\data", FileFormat:=xlCSV Sheets("Timer").Select Application.DisplayAlerts = False Sheets(Sheets.Count).Delete Application.DisplayAlerts = True ActiveSheet.Range("B8").Select husk at når koden ligger på en knap, er det knappen der vælges ved klik, ikke arkene.
03. september 2003 - 15:28
#30
Prøv at slet din knap og lav en ny og nøjes med at kopier koden over i den nye Sub.
03. september 2003 - 15:33
#31
jeg fatter det simpelthen ikke !!!! Alle forslag har virket hos jer andre, men ikke hos mig. Jeg vil prøve at bygge mit program op over den fil du lagde op zogu. Men jeg må lige oprette et spørgsmål, så du kan få dine points. Tak for hjælpen alle.
03. september 2003 - 15:34
#32
Håber det kommer til at virke. :)
Excel kurser for alle niveauer og behov – find det kursus, der passer til dig