2011-09-27 30 views
26

Khi tôi cố gắng mã hóa một liên kết neo HTML trong ô tệp CSV, nó sẽ bị lỗi và không thể đọc được bằng Excel.Làm cách nào để mã hóa siêu liên kết trong tệp được định dạng CSV?

Có một số loại giải pháp hoặc định dạng không phải HTML để mã hóa siêu kết nối trong ô tệp CSV không?

+0

Điều này được giải thích thêm một chút ở đây: http://stackoverflow.com/questions/6563091/can-excel-interpret-the-urls-in-my-csv-as-hyperlinks – Smalcat

+0

http://stackoverflow.com/ question/6563091/can-excel-diễn giải-the-urls-in-my-csv-as-siêu liên kết – Smalcat

Trả lời

4

Tệp CSV đơn giản là văn bản - tùy thuộc vào chương trình tải như thế nào nó chọn để diễn giải văn bản.

Nếu Excel đang phàn nàn khi bạn nạp nó "<a href=\"blah\">Link</a>", "another cell" thì hãy thử chỉ có URL thô và bạn có thể thấy Excel sẽ tự động biến nó thành một liên kết.

Nhưng nói chung Excel không xử lý HTML, do đó, hy vọng nó hiển thị HTML từ tệp CSV đang yêu cầu quá nhiều.

+0

Cảm ơn bạn đã trả lời, nhưng có loại định dạng URL Excel nào để buộc nó tạo liên kết từ URL không? Nếu không, sau đó tôi sẽ cố gắng chỉ gửi URL thô – gep

47

Khi tính năng tự động hóa không hoạt động và bạn chắc chắn đang sử dụng Excel, hãy sử dụng tính năng này làm nội dung trường.

=HYPERLINK("http://stackoverflow.com") 
+1

Cũng hoạt động trong LibreOffice Calc. – jevon

+1

điều này, và câu trả lời của Bob Mulder cả hai đều hoạt động trong OpenOffice. –

+7

điều này thậm chí hoạt động với các bảng tính google, lưu ý rằng bạn cũng có thể chuyển một tham số thứ hai cho tên liên kết: '= HYPERLINK (" http://stackoverflow.com "," so.com ")' – linqu

10

gì làm việc cho tôi trong Excel 2003 - đầu ra để CSV báo cáo kết quả của bạn:

CELLVALUE="=HYPERLINK("+QM+URLCONTENTS+QM+";"+QM+"URLDISPLAYNAME"+QM+")" 
  • lưu ý việc sử dụng dấu chấm phẩy ; trong siêu liên kết. Tôi đã tìm thấy dấu phẩy không hoạt động cho tôi trong Excel 2003.
  • Tùy thuộc vào tập lệnh hoặc ngôn ngữ bạn sử dụng dấu ngoặc kép có thể được xử lý khác nhau. Các cellvalue bạn đưa vào CSV trước khi bạn nhập nó vào Excel nên trông giống hệt như thế này: "=HYPERLINK("URLCONTENTS";"URLDISPLAYNAME")"

nơi:

  • CELLVALUE là sản phẩm ghi vào CSV
  • QM được giá trị ASCII của ["] -> (ASCII 34)
  • URLCONTENTS là URL đầy đủ đến trang bạn muốn liên kết đến. - URLDISPLAYNAME là văn bản bạn thấy trong ô Excel.
Bạn cũng có thể sử dụng đường dẫn tương đối và đặt vị trí cơ sở trong Excel.

Tệp/thuộc tính> Tóm tắt tab> Cơ sở siêu kết nối trường.

Sử dụng như fieldvalue một cái gì đó như http://www.SITENAME.com/SUB_LOCATION/../SUB_LOCATION đặt điểm bắt đầu để bạn có thể nhấp vào điểm đó trong Excel. Tất nhiên, bạn không phải sử dụng SUB_LOCATION nếu chính tên trang web đã được giải quyết thành công cho đường dẫn tương đối của bạn.

Điều tôi không thể tìm thấy là cách làm cho các liên kết được tự động gạch dưới trong Excel. Từ lời khuyên khác được tìm thấy in this article:

Format bằng tay tất cả linkcells như gạch dưới và DARKBLUE (ví dụ) và sau đó là chức năng tiêu chuẩn xuất hiện với các liên kết đã thăm biến thành màu khác.

+0

Có sử dụng dấu phẩy hoặc dấu chấm phẩy hay không như dấu tách đối số trong công thức phụ thuộc vào cài đặt hệ thống của bạn. Trong Bảng điều khiển Windows, bạn có thể đặt dấu tách danh sách dưới dạng dấu phẩy hoặc dấu chấm phẩy và điều đó quyết định những gì Excel mong đợi dưới dạng dấu phân cách ô trong tệp CSV và làm dấu tách đối số trong công thức. Tôi đã thử nghiệm điều này trong Excel 2003 với cả hai thiết lập dấu phân cách danh sách và thấy rằng, trong công thức, bạn cần sử dụng dấu tách danh sách làm dấu tách đối số nếu bạn muốn nó hiển thị chính xác trong Excel. –

+0

Nếu bạn sử dụng "csv" trong python: sau đây đã làm việc cho tôi: 'code old_row ['column_name'] =" = HYPERLINK (\ "http: //www.yahoo.com \" + "," + "\" " + "friendly_name" + "\" "+") "' Tôi đang đọc nó trong Excel 2010 và "," hoạt động thay vì ";". – user2498411

7

Điều này làm việc cho tôi: 1. Sử dụng hàm = HYPERLINK, thông số đầu tiên là liên kết web, thứ hai là giá trị ô. 2. Đặt "trích xung quanh toàn bộ chức năng 3. Thoát khỏi dấu ngoặc kép nội bộ trong phạm vi chức năng với hai bộ dấu ngoặc kép, ví dụ. ''

Dưới đây là một bốn cột dấu phẩy phân cách example.csv:

5,6 "= HYPERLINK (" "http://www.yahoo.com ""; "" Thấy chưa Yahoo "")", 8

Khi một chương trình bảng tính (LibreOffice, vv) mở này .csv nó tạo ra một liên kết hoạt động cho bạn

Hy vọng điều này sẽ giúp

Các vấn đề liên quan