返回列表 上一主題 發帖

[發問] 請問如何將偶數列的文字轉成數值(已有基本語法 但不會組合)

回復 17# HCG10G8bear
  1. Sub TEST()
  2. For I = 2 To Sheet1.UsedRange.Rows.Count Step 2
  3. Sheet1.Cells(I, 4).Resize(1, 7).NumberFormatLocal = "G/通用格式"
  4. Sheet1.Cells(I, 4).Resize(1, 7) = Sheet1.Cells(I, 4).Resize(1, 7).Value
  5. Next
  6. End Sub
複製代碼
這樣改就行了,因為你放在模組裡,而不是直接放在sheet1裡,
所以必需明確的告訴他是在哪個sheet裡的哪些東西,
這樣他才會去那裡找,不然就會迷路。

TOP

回復 16# HCG10G8bear

這樣可以執行成功

這樣就失敗了

TOP

本帖最後由 HCG10G8bear 於 2013-11-7 10:59 編輯

回復 15# ML089

謝謝兩位大大幫我測試

我想我找到問題了

我只要將程式放到 專案→偶數列特定儲存格→sheet1 可以執行沒問題


但是只要把程式放到 PERSONAL→模組→Module1    就會發生執行階段錯誤


如果不能存到PERSONAL 就沒辦法後續的程式應用了

請問這是發生什麼問題了呢

TOP

回復 14# owen06

我執行都很正常,應該沒有問題
{...} 表示需要用 CTRL+SHIFT+ENTER 三鍵輸入公式

TOP

回復 13# HCG10G8bear


    我試都沒問題呀,你比對看看是不是有哪裡不同吧~

偶數列特定儲存格.rar (6.9 KB)

TOP

回復 12# owen06


OWEN06大大

謝謝您的解釋 我學到很多喔

副檔我之前有上傳了

偶數列特定儲存格.zip

再麻煩你幫我CHECK一下

謝謝您不厭其煩的幫忙

謝謝

TOP

回復 11# HCG10G8bear


可是…我照你所說的方式儲存完再開也都沒問題吶,
你要不要上傳附件,看一下問題出在哪?

TOP

回復 8# owen06

owen06大大

我使用工具→巨集→VB編輯器     檢視→程式碼

貼上大大您提供的程式碼 在到Excel sheet執行巨集 可以執行成功

但是只要將巨集儲存

在執行TEST巨集 會出現   執行階段錯誤'424': 此處需要物件

請問是發生什麼問題了呢

謝謝

TOP

回復 9# HCG10G8bear


    UsedRange.Rows.Count=使用的範圍.列數.計算
   
    step 2 = 每一次跳二階
    for i = 1 to 10 , i 會是1到10的連續數
    for i = 1 to 10 step 2,i 會是 1、3、5、7、9
    for i = 1 to 10 step 3,i 會是 1、4、7、10
    這樣應該很明暸吧。
    因為你都是偶數列要執行動作,所以就從第2列開始,
    每一次跳2階,第2列~第4列~第6列,
    一直到UsedRange.Rows.Count所計算出來的那一列為止,
    就不會因為設的範圍太大而浪費執行的時間。

    RESIZE=以某個儲存格為基準點來選取範圍   
    [a1].resize(1,1).select     選擇範圍為a1為基準點的1列及1行,選取結果為a1
    [a1].resize(10,10).select  選擇範圍為a1為基準點的10列及10行,選取結果為a1:j10

TOP

本帖最後由 HCG10G8bear 於 2013-11-5 08:59 編輯
回復  HCG10G8bear

改這樣子就行了
Sub TEST()
For I = 2 To UsedRange.Rows.Count Step 2
Cells(I, ...
owen06 發表於 2013-11-4 13:31


owen06大大 謝謝您的回覆

按照您的程式確實可以執行

但您的程式我有點不懂 希望您釋疑

For Next 是執行迴圈的函數

Sub TEST()
For I = 2 To UsedRange.Rows.Count Step 2                     
Cells(I, 4).Resize(1, 7).NumberFormatLocal = "G/通用格式"   
Cells(I, 4).Resize(1, 7) = Cells(I, 4).Resize(1, 7).Value        
Next
End Sub

'從第二列開始的偶數列 延伸到有使用的儲存格到最後一列  count step 2 不懂是什麼
'Cells(I,4)是儲存格D2 Resize不知道為何 將(1,7)改為(1,20)即可將數值化D2往右延伸
'轉換文字的數字成數值化的數字

請問我這樣解釋哪裡有問題?不懂的地方還請大大指導

謝謝大大不吝教導

真的非常感謝您 省了我好多的時間

TOP

        靜思自在 : 【行善要及時】行善要及時,功德要持續。如燒開水一般,未燒開之前千萬不要停熄火候,否則重來就太費事了。
返回列表 上一主題