Excel เป็นเครื่องมือพิเศษสำหรับการทำงานกับชุดข้อมูลขนาดใหญ่การสร้างภาพข้อมูลและการวิเคราะห์ข้อมูลทางสถิติ ในขณะที่สร้างรายงานข้อมูลโดยละเอียดใน Excel ข้อมูลบางอย่างอาจต้องเชื่อมโยงกับแหล่งข้อมูลภายนอกหน้าเว็บที่อยู่อีเมลและตำแหน่งเป้าหมายในแผ่นงานอื่นในสมุดงานเดียวกัน Microsoft Excel มีตัวเลือกการเชื่อมโยงหลายมิติเหล่านี้ทั้งหมด ในฐานะผู้พัฒนาแอปพลิเคชัน คุณสามารถทำสิ่งนี้ได้โดยใช้ NPOI API ในแอปพลิเคชันของคุณโดยใช้ C# หรือ vb.net ดังที่แสดงในบทความนี้
วิธีเพิ่มไฮเปอร์ลิงก์ใน Microsoft Excel
Microsoft Excel ช่วยให้คุณสร้างไฮเปอร์ลิงก์ที่หลากหลายในเวิร์กบุ๊ก เหล่านี้รวมถึง:
- เชื่อมโยงข้อความกับ URL
- การเชื่อมโยงข้อความกับที่อยู่อีเมล
- การสร้างไฮเปอร์ลิงก์ไปยังตำแหน่งเฉพาะในสมุดงาน
- ลิงก์ไปยังไฟล์ที่มีอยู่ ก่อนที่เราจะเขียนโค้ดของเราเองเพื่อสร้างไฮเปอร์ลิงก์ในไฟล์ Excel ให้เราดูว่าสิ่งเหล่านี้ถูกสร้างขึ้นก่อนโดยใช้ Microsoft Excel
ขั้นตอนในการสร้างไฮเปอร์ลิงก์โดยใช้ Microsoft Excel
คุณสามารถสร้างไฮเปอร์ลิงก์ในไฟล์ excel โดยใช้ขั้นตอนต่อไปนี้
สร้างลิงก์ไปยังไฟล์ที่มีอยู่ไปยังหน้าเว็บ
- บนแผ่นงานให้คลิกที่เซลล์ที่คุณต้องการสร้างลิงค์
- บนแท็บ แทรก ในลิงค์ กลุ่ม คลิก ลิงค์
- ภายใต้ลิงก์ไปยังคลิกไฟล์หรือหน้าเว็บที่มีอยู่
- หากต้องการเลือกไฟล์ให้คลิกโฟลเดอร์ปัจจุบันจากนั้นคลิกไฟล์ที่คุณต้องการลิงก์ไปยัง
- คุณสามารถเปลี่ยนโฟลเดอร์ปัจจุบันได้โดยเลือกโฟลเดอร์อื่นในรายการค้นหา
- หากต้องการเลือกหน้าเว็บให้คลิกหน้าเรียกดูจากนั้นคลิกหน้าเว็บที่คุณต้องการเชื่อมโยงไปยัง
- หากต้องการเลือกไฟล์ที่คุณใช้เมื่อเร็ว ๆ นี้คลิกไฟล์ล่าสุดจากนั้นคลิกไฟล์ที่คุณต้องการลิงก์ไปยัง
- หากต้องการป้อนชื่อและตำแหน่งของไฟล์หรือหน้าเว็บที่รู้จักซึ่งคุณต้องการเชื่อมโยงไปที่ให้พิมพ์ข้อมูลนั้นในกล่องที่อยู่
- หากต้องการค้นหาเว็บเพจคลิกเรียกดูเว็บเปิดหน้าเว็บที่คุณต้องการเชื่อมโยงไปแล้วสลับกลับไปที่ Excel โดยไม่ต้องปิดเบราว์เซอร์
สร้างลิงค์ไปยังที่อยู่อีเมล
ในการเชื่อมโยงหลายมิติไปยังที่อยู่อีเมลใน Excel คุณสามารถทำตามขั้นตอนเหล่านี้:
- เปิดสเปรดชีต Excel ของคุณและนำทางไปยังเซลล์ที่คุณต้องการสร้างไฮเปอร์ลิงก์
- เลือกเซลล์และคลิกขวาที่มัน เลือก“ ไฮเปอร์ลิงก์” จากเมนูบริบท หรือคุณสามารถคลิกที่แท็บ“ แทรก” ในริบบิ้น Excel จากนั้นคลิกที่ปุ่ม“ ไฮเปอร์ลิงก์”
- กล่องโต้ตอบ“ แทรกไฮเปอร์ลิงก์” จะปรากฏขึ้น ในบานหน้าต่างด้านซ้ายเลือก“ ที่อยู่อีเมล”
- ในฟิลด์“ ที่อยู่อีเมล” ให้ป้อนที่อยู่อีเมลที่คุณต้องการเชื่อมโยงหลายมิติ ตัวอย่างเช่นคุณสามารถป้อน“ mailto: example@example.com” (แทนที่“ example@example.com” ด้วยที่อยู่อีเมลที่ต้องการ)
- ทางเลือกคุณสามารถป้อนชื่อหรือข้อความที่เป็นมิตรที่จะปรากฏขึ้นสำหรับไฮเปอร์ลิงก์ในฟิลด์“ ข้อความเพื่อแสดง” สิ่งนี้อาจเป็นเช่น “ส่งอีเมล” หรือที่อยู่อีเมลจริงเอง
- คลิกปุ่ม“ ตกลง” เพื่อสร้างไฮเปอร์ลิงก์
- ขณะนี้เซลล์จะแสดงที่อยู่อีเมลเป็นไฮเปอร์ลิงก์ คุณสามารถคลิกได้และไคลเอนต์อีเมลเริ่มต้นของคุณจะเปิดพร้อมที่อยู่อีเมลใหม่ไปยังที่อยู่อีเมลที่ระบุ
สร้างลิงค์ไปยังตำแหน่งเฉพาะในเวิร์กบุ๊ก
ในการสร้างลิงค์ไปยังตำแหน่งเฉพาะภายในสมุดงานใน Excel คุณสามารถใช้ขั้นตอนต่อไปนี้:
- เปิดสเปรดชีต Excel ของคุณและนำทางไปยังเซลล์หรือช่วงที่คุณต้องการเชื่อมโยงไป
- คลิกขวาที่เซลล์หรือช่วงและเลือก“ คัดลอก” จากเมนูบริบท หรือคุณสามารถกด Ctrl+C บนแป้นพิมพ์ของคุณเพื่อคัดลอกเซลล์หรือช่วง
- ย้ายไปยังตำแหน่งที่คุณต้องการสร้างลิงค์
- คลิกขวาที่เซลล์ที่คุณต้องการสร้างลิงค์และเลือก“ ไฮเปอร์ลิงก์” จากเมนูบริบท นอกจากนี้คุณยังสามารถไปที่แท็บ“ แทรก” ในริบบิ้น Excel และคลิกที่ปุ่ม“ ไฮเปอร์ลิงก์”
- กล่องโต้ตอบ“ แทรกไฮเปอร์ลิงก์” จะปรากฏขึ้น ในบานหน้าต่างด้านซ้ายเลือก“ วางในเอกสารนี้”
- ในฟิลด์“ พิมพ์การอ้างอิงเซลล์” Excel ควรแสดงการอ้างอิงไปยังเซลล์หรือช่วงที่คุณคัดลอกในขั้นตอนที่ 2 โดยอัตโนมัติหากไม่คุณสามารถป้อนข้อมูลอ้างอิงด้วยตนเองในรูปแบบ“ SheetName! CellReference” หรือ“ SheetName! rangereference” ตัวอย่างเช่น“ Sheet1! A1” หรือ“ Sheet2! B2: E5”
- ทางเลือกคุณสามารถป้อนชื่อหรือข้อความที่เป็นมิตรสำหรับลิงค์ในฟิลด์“ text to Display”
- คลิกปุ่ม“ ตกลง” เพื่อสร้างไฮเปอร์ลิงก์
- ขณะนี้เซลล์จะแสดงลิงก์ไปยังตำแหน่งเฉพาะภายในสมุดงาน การคลิกที่มันจะนำคุณไปยังเซลล์หรือช่วงอ้างอิงโดยตรง
วิธีเพิ่มไฮเปอร์ลิงก์ใน Excel โดยใช้ C#
ตอนนี้เราได้เห็นวิธีเพิ่มไฮเปอร์ลิงก์โดยใช้ Microsoft Excel แล้วให้เราดูว่าเราสามารถทำสิ่งเดียวกันได้อย่างไรในแอปพลิเคชัน. NET ของเรา เราจะใช้ API โอเพ่นซอร์ส NPOI สำหรับ. NET เพื่อจุดประสงค์นี้และจะเขียนรหัสใน C# แต่ก่อนหน้านั้นเราต้องติดตั้ง NPOI ในโครงการ. NET ของเราเพื่อเริ่มต้น คุณสามารถเรียนรู้เกี่ยวกับสิ่งนี้ได้ในคู่มือคำแนะนำโดยละเอียดของเราสำหรับ การติดตั้ง NPOI สำหรับ. NET
//Create a workbook object
IWorkbook wb = new XSSFWorkbook();
//Create a worksheet
ISheet sheet = wb.CreateSheet("Hyperlinks");
//Define Cell style for hyperlinks..by default thee are blue and hyperlinked
ICellStyle hlink_style = wb.CreateCellStyle();
IFont hlink_font = wb.CreateFont();
hlink_font.Underline = FontUnderlineType.Single;
hlink_font.Color = HSSFColor.Blue.Index;
hlink_style.SetFont(hlink_font);
ICell cell;
//URL Hyperlink
cell = sheet.CreateRow(0).CreateCell(0);
cell.SetCellValue("URL Link");
XSSFHyperlink link = new XSSFHyperlink(HyperlinkType.Url);
link.Address = ("https://www.fileformat.com/");
cell.Hyperlink = (link);
cell.CellStyle = (hlink_style);
//link to a file in the current directory
cell = sheet.CreateRow(1).CreateCell(0);
cell.SetCellValue("File Link");
link = new XSSFHyperlink(HyperlinkType.File);
link.Address = ("FileFormat.xlsx");
cell.Hyperlink = (link);
cell.CellStyle = (hlink_style);
//e-mail link
cell = sheet.CreateRow(2).CreateCell(0);
cell.SetCellValue("Email Link");
link = new XSSFHyperlink(HyperlinkType.Email);
//note, if subject contains white spaces, make sure they are url-encoded
link.Address = ("mailto:info@fileformat.com?subject=FileForamts");
cell.Hyperlink = (link);
cell.CellStyle = (hlink_style);
//Create a target sheet and cell
ISheet sheet2 = wb.CreateSheet("Sheet2");
sheet2.CreateRow(0).CreateCell(0).SetCellValue("Target ICell");
cell = sheet.CreateRow(3).CreateCell(0);
cell.SetCellValue("Worksheet Link");
link = new XSSFHyperlink(HyperlinkType.Document);
link.Address = ("'Sheet2'!A1");
cell.Hyperlink = (link);
cell.CellStyle = (hlink_style);
using (FileStream sw = File.Create("test.xlsx"))
{
wb.Write(sw, false);
}
บทสรุป
ในบทความนี้เราแสดงวิธีเพิ่มไฮเปอร์ลิงก์ประเภทต่าง ๆ ในไฟล์ XLSX จากภายในแอปพลิเคชัน. NET ของคุณโดยใช้ NPOI API คุณสามารถเรียนรู้เพิ่มเติมเกี่ยวกับการใช้ NPOI API สำหรับสเปรดชีต เพื่อใช้ API ในแอปพลิเคชัน C#/VB.NET ของคุณ สำหรับตัวอย่างเพิ่มเติมติดตามความคืบหน้า