login register Sysop! about ME  

2019년 02월 28일 23시 50분 00초,     조회수 : 344
  제목 : DEXTUpload 에서 엑셀파일 저장후 열어보고 난뒤 내용에 따라 이름을 다시 지정하여 새로 저장이 안됨
SEQ : 164138 글쓴이 : ksi0824

작성 포맷 : TEXT 모드, 자동 줄바꿈 사용

'=============== 시작 ==================

'2차 다시 저장
Savef_Name = "Logis" & lidx & fileSaveName   'xls파일 내용에 따라 fileSaveName (D,M)을 넣어준다

Savef_Name = Savef_Name & "_" & Date() & " " & Replace(FormatDateTime(now(),4),":","-")

file_TmpExt = Split(Fso.GetFileName(uploadform("ofile").FilePath),".")	   	   '물리경로속 파일명 뽑아오기!
file_Ext = file_TmpExt(1)
NewName = Savef_Name & "." & file_Ext
file_save = uploadform.DefaultPath & "\" & NewName	   '최종적 저장 파일경로

Response.Write file_save & "  tttt<br>"
uploadform("ofile").SaveAs file_save	   ' 최종 저장 실행         <==========   에러 발생

'=============== 끝 ==================

에러메시지

Cannot move file F:\home\egsfood\www\upload\temp\DXT2BAB.tmp to 
F:\home\egsfood\www\upload\temp\Sheet1.xlsx. error '80004005' 

DEXTUpload Professional 

/admin/logis/transDataSave.asp, line 107 


엑셀 파일을 업로드 하는 로직인데 

엑셀을 1차 저장하고 파일을 열어서 내용에 따라 파일 이름을 달리 해서 2차 다시 저장하는 로직을 만들고자 합니다

위 시작 ~ 끝 내용 부분을 아래 로직의 위치1, 위치2 에서는 정상적으로 저장이 되는데

위치3 이후 ~ 위치4 는 아래와 같이 에러가 발생합니다

uploadform("ofile").SaveAs file_save	   ' 최종 저장 실행         <==========   에러 발생

어떻게 해야 내용을 열어본 뒤에 다시 저장이 가능할까요?

Set Fso = Server.CreateObject("scripting.filesystemobject")

'1차 저장
file_name = Fso.GetFileName(uploadform("ofile").FilePath)	   	   '물리경로속 파일명 뽑아오기!
file_save = uploadform.DefaultPath & "\" & file_name	   '최종적 저장 파일경로
uploadform("ofile").SaveAs file_save	   ' 최종 저장 실행

위치 1

ConnExcelString = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" & Server.Mappath("/upload/temp") 
& "\" &  file_name & ";Extended Properties='Excel 12.0;HDR=YES;IMEX=1';"

위치 2

Set XLS = server.createobject("ADODB.Connection")
XLS.Open ConnExcelString


위치 3

Set oADOX = CreateObject("ADOX.Catalog")
oADOX.ActiveConnection = ConnExcelString

X = 0
For Each oTable in oADOX.Tables

If X = 0 Then
SheetName = oTable.Name
END If
'Response.Write oTable.Name & "<br>"
X = X + 1
Next







Set Rs = Server.CreateObject("Adodb.RecordSet")
Sql = "SELECT * FROM [" & SheetName & "]"


위치 4



제목 작성자 날짜 조회
DEXTUpload 에서 엑셀파일 저장후 열어보고 난뒤 내용에 따라 이름.. ksi0824 2019-02-28 344

 
 
.NET과 Java 동영상 기반의 교육사이트

로딩 중입니다...

서버 프레임워크 지원 : NeoDEEX
based on ASP.NET 3.5
Creative Commons License
{5}
{2} 읽음   :{3} ({4})