比如抓取天氣等信息!
▍無錫今天的天氣
WEBSERVICE函數可以幫助我們從給定網址中獲取網頁信息!
FILTERXML函數 負責解析數據!
無錫修改為查詢的城市
=FILTERXML(WEBSERVICE("http://ws.webxml.com.cn/WebServices/WeatherWebService.asmx/getWeatherbyCityName?theCityName=無錫"),"//string[11]")
比如我們獲取無錫今天的天氣情況,就可以直接使用上面的函數公式,結果如下!
我們把網址粘貼到瀏覽器,可以看到
比如我們還可以查詢城市介紹,根據上面說明,直接修改為23即可!
▍無錫明天天氣
▼FILTERXML第二參數xpath
=CONCAT(FILTERXML(WEBSERVICE("http://ws.webxml.com.cn/WebServices/WeatherWebService.asmx/getWeatherbyCityName?theCityName=無錫"),"//*[position()>=14 and position()<=15]"))
除了這些,我們還可以做手機歸屬地查詢!
▍手機歸屬地查詢
比如我們查一下 18021268015(虛擬測試)的歸屬地!
▼歸屬地查詢
=FILTERXML(WEBSERVICE("http://ws.webxml.com.cn/WebServices/MobileCodeWS.asmx/getMobileCodeInfo?mobileCode=18021268015&userID="),"//*")
除了這些,我們還可以查詢航班,翻譯等
更多接口,大可以看 http://www.webxml.com.cn/zh_cn/index.aspx
FILTERXML只能解析XML,所以要求返回值是XML,我們在找接口的時候一定要注意 XML返回!現在大部分都是JSON了,XML較少了!
]]>在2022.08月底,Excel 正在內測 IMAGE 函數。由于我加入了 Office 預覽體驗計劃,所以也能及時體驗到最新的功能。我抽空體驗了一番,以下給大家分享一下使用過程。
為什么要推出新的圖片管理函數?用 Excel 以浮動圖片去管理商品,確實存在著一些不太好的體驗。
鼠標易誤觸導致圖片錯位
多圖片排版對齊很繁瑣
不能方便地放大查看圖片
多圖片導致文件反應慢
鏈接轉圖片要用 VBA 解決
為了解決以上這些問題,所以微軟推出了 IMAGE 函數,通過引用圖片鏈接,實時加載圖片。
IMAGE 用法
先來看看它的語法:
= IMAGE(source, [alt_text], [sizing], [height], [width])
source是必須輸入的參數,是圖片的地址,注意必須要求圖片地址是https開頭的,否則會報錯。alt_text是圖片的文字說明,sizing是圖片的大小,height是圖片的高度,width是圖片的寬度。
很方便吧!這個圖片是直接出現在單元格內部的,不再是「浮動對象」了。
因為圖片是實時連網加載的,如果你的網絡不好,或者通過圖片地址找不到圖片時,會出現以下這樣的錯誤提示:
當鼠標移動至圖片單元格時,懸停有預覽彈窗,而且可以放大,非常方便!
其他細節及參數支持的文件格式包括 BMP、JPG/JPEG、GIF、TIFF、PNG、ICO 和 WEBP,但可惜 GIF 圖片加載后是沒有動畫效果的……函數支持在各設備使用,當然目前是要內測通道的用戶才能嘗鮮,365 \Mac\web\iPhone\Android phones,然后估計到 Excel 2024 版本就會自帶。alt_text (可選)用來說明這個圖片,方便輔助視障人士閱讀sizing (可選)當單元格的大小變化時,圖片的尺寸應該如何變化:0 → 調整單元格中的圖像并保持其縱橫比。1 → 使用圖像填充單元格并忽略其縱橫比。2 → 保持原始圖像大小,這可能會超過單元格邊界。3 → 使用高度和寬度參數自定義圖像大小。height (可選)自定義圖片的高度(以像素為單位)width (可選)自定義圖片的寬度(以像素為單位)
應用場景
1、最常見的應用,就是制作一個帶圖片的商品列表,根據商品名稱,查詢相關的商品資料及其圖片。
2、由于圖片現在是內置在單元格里顯示,所以其實設置數據驗證的時候,可以直接把圖片列設置為序列,實現篩選效果。
]]>首先給出這類問題的通用公式如下:
=IFERROR(LOOKUP(0,1/(COUNTIF(第一個公式單元格上方單元格絕對引用:同左相對引用,數據區域)-1),數據區域),"")
其中數據區域就是含重復值的數據區域,第一個公式單元格上方單元格是我們寫提取不重復數據公式的第一個單元格上方的單元格。
根據通用公式以及實際的例子,寫出本例中公式如下:
=IFERROR(LOOKUP(0,1/(COUNTIF($D$2:D2,$B$3:$B$19)-1),$B$3:$B$19),"")
在D2單元格寫入公式,向下復制,可以得到不重復數據。
]]>題目要求:計算每個單元格中數字的合計。如下圖所示:
這里用的方法,來解決這個問題,有興趣的朋友可以自行理解。下面僅作參考,當然這段代碼還可以寫成自定義函數的形式。
Sub sumx()
For i = 2 To ActiveSheet.Cells(65536, 1).End(xlUp).Row
r = Split(Cells(i, 1), ",")
s = 0
For j = 0 To UBound(r)
s = Val(r(j)) + s
Next
Cells(i, 2) = s
Next
End Sub
案例Excel文件在下方下載:↓↓↓
]]>Sub xyf()
Sheet1.Visible = xlSheetHidden
End Sub
然然后將光標定位于Sub 與End Sub 之間按下快捷鍵F5運行代碼既可以將第一個工作表隱藏。
3、如果要將某個工作表取消隱藏可以使用如下的代碼
Sub xyf()
Sheet1.Visible = xlSheetVisible
End Sub
通過修改工作表對象的Visible屬性可以在隱藏和取消隱藏之間切換。
]]>加密方法:
打開界面,選擇左側VBAProject(文件名.xls)
工具/郵件-----VBAProject屬性-“保護”標簽-勾選“查看時鎖定工程”并輸入密碼-確定
如果不勾選,查看鎖定工程,密碼只是保護這個加密解密,而不保護這個表的VBE
如果不小心,沒選擇工程,就直接加密了,整個VBE都無法打開
解密方法:如果不小心,沒選擇工程,就直接加密了,整個VBE都無法打開,如果出現此情況,ALT+F11+FN調出去掉密碼和查看時鎖定工程。
]]>使用本函數之前,必須建立對規劃求解加載宏的引用。當 Visual Basic 模塊處于活動狀態時,單擊“工具”菜單中的“引用”,然后選中“可使用的引用”列表框中的“Solver”復選框。
然后給大家一個例子和參考文獻,大家自行研究下!
規劃求解函數功能 - 百度文庫:
https://wenku.baidu.com/view/168cc27bb1717fd5360cba1aa8114431b80d8e1c.html
]]>例:A1:A100為數據源
前面20%學生的平均成績
=AVERAGE(IF(A1:A100>=PERCENTILE(A1:A100,0.8),A1:A100))
后面20%學生的平均成績
=AVERAGE(IF(A1:A100<=PERCENTILE(A1:A100,0.2),A1:A100))
數組公式,要以CTRL+SHIFT+ENTER結束輸入,輸入后公式兩頭有{}。
或者:
假設數據在A1:A100中
前10%的數據的平均值公式為:
=AVERAGE(IF(A1:A100>=LARGE(A1:A100,COUNT(A1:A100)*0.1),A1:A100))
數組公式,按ctrl+shift+enter三鍵結束。
我們一般通過郵件附件或QQ發送文件的方式分享excel表格,但如果我們希望把一個excel表格分享給更多人時,那么把表格嵌入在網頁里將是一個再好不過的方法。而且,在我們在后臺對excle表格里的數據進行修改后,網頁上嵌入的表格也可以自動更新。
1、注冊一個Zoho Docs賬號,將你的excel表格上傳到里面。
2、在Zoho Docs里打開上傳完成的excel表格,點擊“共享”- “嵌入”。
3、在彈出的窗口中,獲取嵌入代碼。
4、將獲取的嵌入代碼復制到網頁源代碼里,你可以定義excel表格放置的位置。
5、這樣,我們就成功地將這個excel表格嵌入到了網頁里。
]]>但是:SpreadJS是付費軟件,可自行百度搜索去官網查看。
體驗地址:https://demo.grapecity.com.cn/SpreadJS/WebDesigner/index.html
]]>