二維碼
企資網(wǎng)

掃一掃關(guān)注

當(dāng)前位置: 首頁 » 企資快訊 » 匯總 » 正文

Excel_VBA學(xué)習(xí)筆記_單元格的chara

放大字體  縮小字體 發(fā)布日期:2023-02-24 11:58:36    作者:百里安苛    瀏覽次數(shù):75
導(dǎo)讀

單元格的.Characters 屬性,常用于取關(guān)鍵字,給關(guān)鍵字標(biāo)注用于區(qū)別的顏色。語法:Range.Characters(Start, Length);Start 起始位置,表示從第幾個字符起;Length 取幾位字符。.Characters返回的是一個對象。示例:

單元格的.Characters 屬性,常用于取關(guān)鍵字,給關(guān)鍵字標(biāo)注用于區(qū)別的顏色。

語法:Range.Characters(Start, Length);Start 起始位置,表示從第幾個字符起;Length 取幾位字符。.Characters返回的是一個對象。

示例:將標(biāo)紅的字符取出,并分段顯示。

一般的處理思路:是用循環(huán)判斷單個字符顏色,再判斷紅色字符是否連續(xù),有多長,再輸出。用到循環(huán)嵌套,多重判斷。

Set Rng = Range("A1") 有紅色 = False 輸出計數(shù) = 1 For i = 1 To Len(Rng.Value) n = i 'i 值是標(biāo)紅的起始位置,(n-1)值記錄連續(xù)標(biāo)紅字符的終止位置 Do While Rng.Characters(n, 1).Font.Color = vbRed n = n + 1 有紅色 = True If n > Len(Rng.Value) Then '防止n 大于字符串長度出錯 Exit Do End If Loop If 有紅色 Then '出現(xiàn)標(biāo)紅字符,進(jìn)行輸出 Cells(輸出計數(shù), "C") = Mid(Rng.Value, i, n - i) 'n-i 就是標(biāo)紅字符的長度 輸出計數(shù) = 輸出計數(shù) + 1 有紅色 = False i = n - 1 'i值跳到標(biāo)紅字符最后,避免重復(fù)判斷 End If Next i

其實(shí),反向思考下,將黑色字符都換成“空格”,紅色字符就留下了,再以“空格”為分隔,不就得到了所需。這個思路以處理黑色字符為思路。下面代碼明顯簡單清晰多了。

Set Rng = Range("A1") For i = 1 To Len(Rng.Value) If Rng.Characters(i, 1).Font.Color = vbRed Then t = t & Rng.Characters(i, 1).Text '記錄下紅色的字符 Else t = t & " " '黑色的字符都被換成空格 End If Next i t = WorksheetFunction.Trim(t) '調(diào)用工作表函數(shù) Trim 對空格進(jìn)行處理 arr = Split(t) Range("b1").Resize(UBound(arr) + 1, 1) = Application.Transpose(arr)

本示例意在拓展思維,當(dāng)直接處理數(shù)據(jù)很麻煩時,反方向考慮下,說不定有奇效。

附:VBA 里去“空格”函數(shù) Trim,LTrim,RTrim

VBA 中Trim 去除字符串頭尾部的空格,中間的空格不進(jìn)行任何處理;

LTrim 本意去掉左邊的空格,就是去除位于字符串頭部的空格;

RTrim 本意去掉右邊的空格,就是去除位于字符串尾部的空格。

而工作表函數(shù)Trim,不光去除頭尾部的空格,還將字符串中間的連續(xù)空格合成 1個空格。

見下圖中t1 、 t2值

 
(文/百里安苛)
免責(zé)聲明
本文僅代表作發(fā)布者:百里安苛個人觀點(diǎn),本站未對其內(nèi)容進(jìn)行核實(shí),請讀者僅做參考,如若文中涉及有違公德、觸犯法律的內(nèi)容,一經(jīng)發(fā)現(xiàn),立即刪除,需自行承擔(dān)相應(yīng)責(zé)任。涉及到版權(quán)或其他問題,請及時聯(lián)系我們刪除處理郵件:weilaitui@qq.com。
 

Copyright ? 2016 - 2025 - 企資網(wǎng) 48903.COM All Rights Reserved 粵公網(wǎng)安備 44030702000589號

粵ICP備16078936號

微信

關(guān)注
微信

微信二維碼

WAP二維碼

客服

聯(lián)系
客服

聯(lián)系客服:

在線QQ: 303377504

客服電話: 020-82301567

E_mail郵箱: weilaitui@qq.com

微信公眾號: weishitui

客服001 客服002 客服003

工作時間:

周一至周五: 09:00 - 18:00

反饋

用戶
反饋

主站蜘蛛池模板: 久久亚洲私人国产精品va| 国产国语在线播放视频| 亚洲欧美成人一区二区在线电影| a在线观看免费视频| 狠狠狠狼鲁欧美综合网免费| 妞干网2018| 免费人成视网站在线观看不卡| 中文字幕亚洲乱码熟女一区二区| 国产精品天天在线午夜更新| 国产一级性生活片| 久久99精品久久水蜜桃| 色一情一乱一伦一视频免费看 | 娇妻校花欲乱往事叶子 | 在线观看国产欧美| 亚洲自偷精品视频自拍| 91嫩草视频在线观看| 欧美人与动欧交视频| 国产激情视频在线播放| 久久国产精品无码一区二区三区 | 精品国产夜色在线| 女人被躁到高潮嗷嗷叫游戏| 伊人久久综合精品无码AV专区| 99国产精品视频久久久久| 欧美日韩综合网| 国产无遮挡又黄又爽在线视频| 乱人伦人妻中文字幕在线入口| 里番无修旧番6080在线观看| 扒开老师挠尿口到崩溃刑罚| 八戒网站免费观看视频| 999久久久国产精品| 欧洲熟妇色xxxx欧美老妇多毛网站| 国产在线观看色| 中文字幕av无码不卡免费| 男人j捅进女人p| 国产精品亚洲欧美大片在线观看 | 天天影院成人免费观看| 亚洲欧美成人综合| 黄A无码片内射无码视频| 成人精品一区二区户外勾搭野战| 免费A级毛片无码久久版| 1024手机基地在线看手机|