Re: [VBA ] For NEXT 問題

看板Visual_Basic作者 (緋心刀刃)時間8年前 (2016/11/22 14:24), 編輯推噓1(102)
留言3則, 1人參與, 最新討論串3/3 (看更多)
看不是很懂你的文章=.= ※ 引述《luckid (luckid)》之銘言: : ※ 引述《oysteromele (蚵仔煎不要蚵仔)》之銘言: 兩個是同一個人是嗎? : 小弟對vba所知甚少,附上程式碼僅供參考, : 期能解決遇到數字則無法更改格式問題, : 班門弄斧,貽笑大方,有誤請不吝指正,感謝. 我感覺成語好像有點亂用=.= : 原本是想更改完格式後,去掉開頭的'符號, : 但發現去掉之後,原本改完顏色的部份就會消失, : 想不到辦法可解決,不好意思,若有前輩願意指點一二,小弟不勝感激. : 在EXCEL2007, : 儲存格格式為數字的情形下, : 同一儲存格內的個別數字好像無法修改為不同格式, : 試著改過幾次又都跳回來. : 另外就是不知為何,範圍以外的A欄儲存格也會被更動格式,變成紅色, : 無奈之下只好新增if以避免此問題. 如你所說 數值是不能改變 所以用單引號只是在通用格式下強制使用文字 不如就改為文字模式即可 Sub test() Dim lastR As Integer Dim indexI As Integer '抓取最後一行位置 lastR = Cells(Rows.Count, 1).End(xlUp).Row '從第二行跑到最後一行 For indexI = 2 To lastR '確認此行的D與E是否有資料 If Cells(indexI, "d") <> "" And Cells(indexI, "e") <> "" Then '將A值改為有加單引號 改為 我改為轉字串型態 Cells(indexI, 1).NumberFormatLocal = "@" Cells(indexI, 1).FormulaR1C1 = "" & Cells(indexI, 1) '將選取文字更改顏色 With Cells(indexI, 1).Characters(Cells(indexI, "d"), Cells(indexI, "e")) .Font.ColorIndex = 3 .Font.Bold = True End With End If Next End Sub 最後 寫程式最好要用Tab或空格做排版 這是將程式寫好的第一個步驟 但我其實也滿佩服不排版的人 他們為什麼能看懂自己的程式呢XD 最後 加個註解吧 雖然我個人是不加註解 但你要別人幫你看程式 別人還要想了解你程式要做什麼 加個註解別人才能更快了解 -- 常發人好人名片    Yaiba:您好,我是好人       幫正妹組電腦送到府          外加一年到府維護 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 49.219.253.54 ※ 文章網址: https://www.ptt.cc/bbs/Visual_Basic/M.1479795870.A.D02.html

11/22 15:36, , 1F
非常感謝Y大指正,寫程式不縮排一直都是壞習慣,確實要改進
11/22 15:36, 1F

11/22 15:37, , 2F
註解也是一個重點.以後會注意.另外小弟跟原提問者非同一人
11/22 15:37, 2F

11/22 15:38, , 3F
最後成語不是好像亂用,是根本就在亂用,哈哈. 總之再次感謝
11/22 15:38, 3F
文章代碼(AID): #1OC-IUq2 (Visual_Basic)
討論串 (同標題文章)
本文引述了以下文章的的內容:
完整討論串 (本文為第 3 之 3 篇):
文章代碼(AID): #1OC-IUq2 (Visual_Basic)