ASP นำเข้าข้อมูล (รูปภาพ) ไปยัง Excel เวอร์ชันสุดท้ายของ ASP ใช้งาน Excel ฉันเชื่อว่ามีคนจำนวนมากที่จำเป็นต้องใช้โปรแกรมเพื่อนำเข้าข้อมูลไปยัง Excel และโดยทั่วไปแล้ว การส่งออกข้อมูลข้อความบางส่วนจะสะดวกมาก cvs (แยกข้อมูลด้วยเครื่องหมายจุลภาคและการขึ้นบรรทัดใหม่) เปิดด้วย Excel ตามค่าเริ่มต้น) เช่น ถือว่าไฟล์ xls เป็นข้อมูลและใช้ SQL เพื่อดำเนินการ เป็นต้น ฉันควรทำอย่างไรเมื่อต้องส่งออกข้อมูลรูปภาพ ? สิ่งนี้ต้องใช้วัตถุ Excel.Application
ในความเป็นจริง การใช้ Excel.Application คุณสามารถดำเนินการทั้งหมดที่ซอฟต์แวร์ OfficeExcel สามารถทำได้ และฟังก์ชันนี้ค่อนข้างทรงพลัง อย่างไรก็ตาม เราแต่ละคนมีพลังในการเรียนรู้ที่จำกัด และเป็นไปไม่ได้ที่ทุกคนจะคุ้นเคย ฉันเลือกคีย์จำนวนมากที่ฉันค้นหาคำใน Baidu และ Google โดยหวังว่าจะได้รับสิ่งที่มีค่า แต่หลังจากค้นหา ฉันไม่พบเวอร์ชันที่สมบูรณ์ ส่วนใหญ่เป็นคำถามและโค้ดมีข้อผิดพลาดที่ชัดเจนมากมายและ ข้อบกพร่องด้านการทำงาน เรื่องเพศ เป็นเรื่องที่ควรค่าแก่การวิพากษ์วิจารณ์ว่าไซต์จำนวนมากคัดลอกบทความจากไซต์อื่นโดยตรง และยังเป็นบทความคุณภาพต่ำ เฮ้ อย่ามองหามัน!
ฉันพบชุดคู่มือ VBA เป็นครั้งแรก และโชคดีที่มันอยู่ในรูปแบบ CHM ฉันเปิด Vbaexcelxl10.chm ไว้ในนั้น และมันก็ไม่ได้แย่เลย มันเป็นคู่มือที่ดีจริงๆ แต่ไม่ใช่บทช่วยสอน และฉันก็รู้สึกว่า ร้องไห้... ฉันช่วยไม่ได้ ฉันไม่มีทางเลือกอื่นนอกจากต้องอ่านต่อ คู่มือนี้เป็นเพียงคู่มือเท่านั้น และจะไม่กล่าวถึงการทำงานที่สะดวกสบายในรายละเอียด และจะไม่อธิบายความเชื่อมโยงเชิงตรรกะของแต่ละรายการ ส่วนหนึ่งของเนื้อหาอย่างสมบูรณ์ หลังจากการวิเคราะห์อย่างรอบคอบและการทำนายที่ชัดเจนของฉัน การคิดอย่างรอบคอบ การทดลองมากมาย ขึ้นภูเขามีด ลงหม้อไฟ ไม่สิ ทะเลไฟ ในที่สุดก็สำเร็จอย่างสมบูรณ์แบบ ตอนนี้ฉันอัปโหลดไปที่ Web630.Net ข้ามคืน หวังว่าทุกคนจะทำได้ จำไซต์นี้ไว้ และฉันหวังว่าแต่ละไซต์เทคโนโลยีจะโพสต์บทความต้นฉบับเพิ่มเติม และมีส่วนช่วยในการพัฒนาอุตสาหกรรมการเขียนโปรแกรมของจีน
คัดลอกรหัสรหัสดังต่อไปนี้:
-
Rem เริ่มต้นสภาพแวดล้อมการทำงานของ ExcelApplication
หรี่ ExcelApp, eBook, eSheet
ตั้งค่า ExcelApp = CreateObject(Excel.Application) 'สร้างวัตถุ Excel
ExcelApp.DisplayAlerts=false 'อย่าแสดงคำเตือน'
ExcelApp.Application.Visible=false 'อย่าแสดงอินเทอร์เฟซ
Rem เริ่มต้นข้อมูล Excel
'ExcelApp.Workbooks.Open(Server.MapPath(zzz.xls)) ' เปิดสมุดงาน Excel และแทนที่บรรทัดต่อไปนี้
ตั้งค่า eBook=ExcelApp.Workbooks.Add 'สร้างสมุดงาน Excel ใหม่
ตั้ง eBook=ExcelApp.Workbooks(1) 'อ้างอิงสมุดงานแรก
set eSheet = eBook.Worksheets(1) 'อ้างอิงแผ่นงานแรก
การนำเข้าข้อมูล Rem
ติ่มซำ img
ฉัน = 1
สำหรับ i=1 ถึง 5
eSheet.Cells(i,1).Value=ฟิลด์ที่หนึ่ง&i
eSheet.Cells(i,2).Value=ฟิลด์ 2&i
eSheet.Cells(i,3).Value=ฟิลด์ที่สาม&i
eSheet.Cells(i,4).เลือก 'เลือกเซลล์ที่ 4 ในแถว i
ตั้งค่า img=eSheet.Pictures.Insert(Server.MapPath(people.jpg)) 'แทรกรูปภาพที่ตำแหน่งด้านบนและรับการอ้างอิงถึงรูปภาพ
img.Top=img.Top+2 'ปรับตำแหน่งของภาพด้านล่างเหมือนเดิม ไม่งั้นมันจะไปกดขอบโต๊ะ
img.Left=img.Left+2 'หน่วยเป็นปอนด์
eSheet.Rows(i).RowHeight=img.Height+4 'ปรับความสูงของแถวปัจจุบันให้เท่ากับความสูงของรูปภาพโดยอัตโนมัติ
ต่อไป
Rem บันทึกงานที่ทำด้านบน
'eBook.Save 'หากคุณเปิดไฟล์ Excel ที่มีอยู่ คุณสามารถใช้บรรทัดนี้เพื่อแทนที่บรรทัดต่อไปนี้
eBook.SaveAs Server.MapPath(zzz.xls)
ตั้งค่า eSheet=ไม่มีอะไร
ตั้ง eBook=ไม่มีอะไร
ต้องออกจาก 'ExcelApp.Quit' มิฉะนั้นกระบวนการ Excel จะยังคงอยู่ในระบบปฏิบัติการ
ตั้ง ExcelApp = ไม่มีเลย
-
เมื่อ ASP อ่านหรือเขียนข้อมูลลงใน Excel วิธีที่ง่ายกว่าคือให้ถือว่า Excel เป็นฐานข้อมูลและใช้คำสั่ง SQL เพื่อดำเนินการ มีบทความที่เกี่ยวข้องในหลาย ๆ ที่บนอินเทอร์เน็ต บทความนี้เป็นเพียง "ASP นำเข้าข้อมูลไปยัง Excel ( picture)" ข้อมูลเสริมของ "The Final Edition" มีไว้เพื่อใช้อ้างอิง
คัดลอกรหัสรหัสดังต่อไปนี้:
-
ติ่มคอน, rs, sql
SubDBOpen()
ติ่ม db: db=Server.MapPath(zzz.xls)
ตั้งค่า conn=Server.CreateObject(Adodb.Connection)
เมื่อเกิดข้อผิดพลาด ดำเนินการต่อต่อไป
conn.Open Provider=Microsoft.Jet.OLEDB.4.0;คุณสมบัติเพิ่มเติม=Excel 8.0;HDR=YES;แหล่งข้อมูล= & db
Rem HDR มีค่าเริ่มต้นเป็น YES ซึ่งหมายความว่าบรรทัดแรกจะถูกใช้เป็นชื่อฟิลด์ มิฉะนั้นจะถือเป็นเนื้อหา
Rem สำหรับ Excel2007 ควรเป็น: Provider=Microsoft.ACE.OLEDB.12.0; Extended Properties=Excel 12.0;Data Source=xxx.xlsx;
ถ้า Err.Number<>0 แล้ว
ผิดพลาด.เคลียร์
Response.Write(<h1>ลิงก์ฐานข้อมูลมีข้อผิดพลาด</h1>)
การตอบสนองสิ้นสุด()
สิ้นสุดถ้า
เมื่อเกิดข้อผิดพลาด GoTo 0
จบหมวดย่อย
SubDBClose()
ถ้า IsNotBlank (conn) แล้ว
con.ปิด()
ตั้งค่า conn=ไม่มีอะไร
สิ้นสุดถ้า
จบหมวดย่อย
ฟังก์ชั่น IsNotBlank (ByRef TempVar)
IsBlank=จริง
เลือกกรณี VarType(TempVar)
กรณีที่ 0,1 'ว่างเปล่า & Null
IsBlank = เท็จ
กรณีที่ 9 'วัตถุ
ถ้า TypeName(TempVar) = Nothing หรือ TypeName(TempVar) = Empty แล้ว
IsBlank = เท็จ
สิ้นสุดถ้า
สิ้นสุดการเลือก
ฟังก์ชันสิ้นสุด
โทรDBOpen()
sql=SELECT * FROM [Sheet1$] 'ให้ความสนใจกับการเขียนชื่อตาราง คุณต้องเพิ่มสัญลักษณ์ $ หลังชื่อเวิร์กชีต
ตั้งค่า rs=conn.Execute(sql)
ในขณะที่ไม่ใช่ rs.Eof
ตอบกลับเขียน(rs(0)&, )
ตอบกลับเขียน(rs(1)&, )
Response.เขียน(rs(2)&<br />&VbCrLf)
rs.Movenext
เวนด์
rs.Close: ตั้งค่า rs=Nothing
CallDBClose()
-