ตัวห้อยและตัวยกใน Excel


3

ฉันมีแผ่น XL ที่มีสูตรทางเคมี - ซึ่งโดยทั่วไปเป็นเพียงตัวอักษรที่มีตัวห้อยและตัวยกตัวเลข ฉันสามารถบันทึกเป็นหน้า html และรับอิลิเมนต์ <sub> และ <sup> html ได้ แต่จะถูกฝังไว้ภายใต้มาร์กอัพและ css อื่น ๆ มากมาย

มีวิธีที่จะได้สูตรสำหรับเซลล์ที่มี H 2 O อย่างง่ายๆหรือเปล่าเช่นมาร์กอัปเช่นนี้:

H<sub>2</sub>O

คำตอบ:


3

หากคุณต้องการแปลงข้อความตัวห้อย / ตัวยกเป็นมาร์กอัป HTML ที่สอดคล้องกันให้สร้างฟังก์ชัน VBA (กดALT+ F11เพื่อไปที่ตัวแก้ไข) ด้วยรหัสนี้:

Function SubToHtml(rng As Range)

Dim c, ns As String

For i = 1 To Len(rng.Value) Step 1
    c = rng.Characters(i, 1).Text
    If rng.Characters(i, 1).Font.Subscript Then
        ns = ns & "<sub>" & c & "</sub>"
    ElseIf rng.Characters(i, 1).Font.Superscript Then
        ns = ns & "<sup>" & c & "</sup>"
    Else
        ns = ns & c
   End If
Next i

'to take care of adjacent sub/superscript characters
ns = Replace(ns, "</sub><sub>", "")
ns = Replace(ns, "</sup><sup>", "")

SubToHtml = ns

End Function

การใช้

สมมติว่าA1มีสตริง C 2 O 3 ป้อนสูตรนี้ในเซลล์ว่าง:

=subtohtml(A1)

ควรแสดงผลลัพธ์นี้ในเซลล์:

C<sub>2</sub>O<sup>3</sup>

เปลี่ยนชื่อฟังก์ชั่นหากคุณต้องการ ฉันไม่สามารถนึกถึงนักเล่นที่เก่งขึ้นได้ : D AFAIK ไม่มีวิธีแก้ปัญหาที่ไม่เกี่ยวข้องกับ VBA; เนื่องจากคุณจะต้องผ่านตัวละครแต่ละตัวในเซลล์และตรวจสอบกรณีหรือรูปแบบตัวอักษร

แก้ไข : ฉันคิดว่าข้อความของคุณจะไม่มีตัวอักษรย่อย / ตัวยกอยู่ติดกัน เพียงในกรณีที่พวกเขาทำผมแทรกรหัสบางอย่างที่จะดูแลของสตริงที่มีที่อยู่ติดกันย่อย / ตัวอักษรตัวยกเช่น CO 20


1

ไปที่: โครงร่าง> คุณสมบัติของเซลล์> ประเภทตัวอักษร

คุณควรทำเครื่องหมายในช่อง "ตัวห้อย"

ที่มา:

http://www.helpmij.nl/forum/showthread.php/221389-Subscript-in-Excel


ใช่ แต่ฉันจะบันทึกสิ่งนั้นในรูปแบบ H <sub> 2 </sub> O สำหรับนำเข้าสู่ฐานข้อมูลได้อย่างไร
แกรม

ฐานข้อมูลหรือไม่ Access นั้นไม่ใช่ Excel ใช่หรือไม่ ในกรณีนั้น: ไม่รู้จะทำอย่างไร
RobinJ
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.