返回列表 上一主題 發帖

用excel上網查音標

用excel上網查音標

本帖最後由 Hsieh 於 2010-7-22 13:04 編輯

http://gb.twbts.com/index.php?topic=11456.10


http://www.boxcn.net/shared/77cyt18g34
crdotlin 版主做的。

舊版的excel主題: 單字(詞)學習工具 曾討論過的,用excel上網查音標。
只是現在yahoo的網頁改變了
請問現在要怎麼用呢!
50 字節以內
不支持自定義 Discuz! 代碼

本帖最後由 c_c_lai 於 2016-1-26 13:41 編輯

回復 1# 自我感覺良好
回復 2# Hsieh
回復 6# GBKEE
  1. Option Explicit

  2. Sub searchIT(Rng As Range)
  3.     Dim XH As Object
  4.     Dim shpRm As Shape
  5.    
  6.     '  清除已有的解釋及音標
  7.     With Rng.EntireRow
  8.         .Resize(1, .Columns.Count - 1).Offset(0, 1).Clear
  9.     End With
  10.    
  11.     '  開啟網頁
  12.     Set XH = CreateObject("Microsoft.XMLHTTP")
  13.     With XH
  14.         .Open "get", "http://tw.dictionary.search.yahoo.com/search?p=" & Rng.Text, False
  15.         .send
  16.         On Error Resume Next
  17.         '  摘取第一組中文翻譯
  18.         '  Rng.Offset(0, 2) = Split(Split(.responseText, "class=""description""><p>1.")(1), "<")(0)
  19.         If InStr(.responseText, "><h4>1.") > 0 Then Rng.Offset(0, 2) = Trim(Split(Split(.responseText, "><h4>1.")(1), "<")(0))
  20.         '  摘取KK音標
  21.         '  Rng.Offset(0, 1) = Left(VBA.Split(.responseText, "KK</span>  ")(1), InStr(VBA.Split(.responseText, "KK</span>  ")(1), "]"))
  22.         '  Rng.Offset(0, 1) = Split((Split(.responseText, "KK</span>")(1)), "<span>")(0)
  23.         If InStr(.responseText, ">KK[") > 0 Then Rng.Offset(0, 1) = "[" & Split(Split(.responseText, ">KK[")(1), "]")(0) & "]"
  24.     End With
  25.    
  26.     Rng.Select
  27. End Sub

  28. Sub Ex()
  29.     Dim Rng As Range
  30.    
  31.     For Each Rng In ActiveSheet.Range("A1", ActiveSheet.Range("A" & Rows.Count).End(xlUp))
  32.         Rng.Select
  33.         If Rng.Value <> "" Then
  34.             searchIT Rng
  35.         End If
  36.     Next
  37. End Sub
複製代碼

E.png (18.87 KB)

E.png

E.png (18.87 KB)

E.png

TOP

我也是一樣的問題 卡在send,請問如何處理

TOP

回復 9# wufonna


我也是相同問題,使用環境Win 7, MS Office 2010.
好可惜,功能很棒,請大大協助。

TOP

回復 2# Hsieh


    請問 版主如下錯誤是如何,謝謝

TOP

看起來是一個好玩的軟體~~
載來玩玩

TOP

謝謝版主大大。
已測試可以應用了。
希望借用此功能可以
讓自已的英文有所進步。

感恩大大!

TOP

回復 6# dechiuan999
2樓    摘取KK音標  這行程式碼
          Rng.Offset(0, 1) = Left(VBA.Split(.responseText, "KK</span>  ")(1), InStr(VBA.Split(.responseText, "KK</span>  ")(1), "]"))
         修改為
         Rng.Offset(0, 1) = Split((Split(.responseText, "KK</span>")(1)), "<span>")(0)

TOP

各位大大好:

    又有一個學習英文的
好工具,小弟要好好多加
運用。可是小弟在學習過程
中一直無法顯示其音標。
請問其原因為何呢?

感恩各位大大!

TOP

回復 2# Hsieh


    我是新會員還不能下載檔案。小弟不才,請問這些代碼要如何使用?

TOP

        靜思自在 : 謊言像一朵盛開的鮮花,外表美麗,生命短暫。
返回列表 上一主題