返回列表 上一主題 發帖

Array 陣列應用

Array 陣列應用

本帖最後由 hugh0620 於 2010-12-8 17:22 編輯

Dear 大大

     小弟對於陣列的應用方式不熟悉,所以,有些地方可以使用到陣列簡化程式碼的撰寫,卻寫了一堆程式碼,
       雖可以答達目的,還是請教大大如何使用array(陣列)來解決問題,也可以讓小弟吸收一下

    附件是我工作上的一個舉例
    1. Customer 資料有兩筆       (大約需放大至100筆)
    2. 狀態 資料有三筆
    3. AB欄是我展開後所需要的結果
   
    請大大們指導一下

    多資料匯整成在同data中.zip (989.78 KB)

本帖最後由 hugh0620 於 2010-12-8 17:22 編輯

回復 1# hugh0620


   大大們

   後來我看到一些大大以前寫的方式,幫忙看一下有沒有需要改進的  (若是陣列中的資料有幾十筆時,有否更好的方式呢?????)
    N = 0
     I = 0
     Do Until Sheet1.Cells(3 + I, 4) = ""
           For Each R In Array("F", "O", "P")
               Sheet1.Cells(3 + N, 1) = R
               Sheet1.Cells(3 + N, 2) = Sheet1.Cells(3 + I, 4)
               N = N + 1
           Next
         I = I + 1
     Loop

TOP

回復 3# oobird


    大大 這是我第一次發       我在發之前有現找尋過後
            沒有查到相關的資料   我才發帖
        請勿誤會

TOP

回復 5# oobird


    抱歉唷~ 是我傳錯檔~ 讓大大誤會了~
    重傳一次
    array 陣列應用.rar (7.76 KB)

TOP

回復 7# oobird


    謝謝大大的說明~

   另請教一個問題,若我資料是浮動的 (如customer 是未知筆數,狀態還是固定三種時)
        這樣大大程式碼跑起來就無法達到需求,這樣的問題該如何解決呢???

TOP

本帖最後由 hugh0620 於 2010-12-9 11:15 編輯

回復 9# oobird

       真的很感謝大大~ 真的是厲害~   
       最後再請教大大語法的意思
       1. Dim a, b, arr(), i%, j%, m%                   i%的意思是什麼呢? (我沒用過這樣的寫法,請大大教導一下)
           a = [e3:e5]
           b = [d3:d4]
          For i = 1 To UBound(b)
                    For j = 1 To UBound(a)
                    m = m + 1
       2.            ReDim Preserve arr(1 To 2, 1 To m)           ReDim 與 Preserve 的意思與用法??
                             arr(1, m) = a(j, 1)
                             arr(2, m) = b(i, 1)
           Next j, i
          [a3].Resize(m, 2) = Application.Transpose(arr)

TOP

回復 12# oobird


    大大~ 我都有先使用F1看說明~ 可是....公司的電腦~ 在OFFICE的說明~ 無法跳出
         所以~ 才先請教大大們

         

TOP

回復 14# oobird


    謝謝大大詳細的說明

TOP

        靜思自在 : 口說一句好話,如口出蓮花;口說一句壞話如口吐毒蛇。
返回列表 上一主題