【求助】VBA問題



贊助商連結


Chirs
2002-04-07, 11:12 AM
小弟目前正在幫公司整理一些EXCEL的舊資料,需要用到很多瑣碎繁雜的動作,才能得到小弟要的資訊,耗時又耗力,想用VBA寫程式,奈何功力低的可憐,簡單的已用錄製解決,但還是有很多步驟不會寫,所以有一些問題想問各位:

1.如何讓儲存格的數字,自動乘上不同參數
如A1=2,則B1=2*5/1000,A1=3,則B1=3*6.8/1000 .... 依此類推
目前知道的參數有
(2*5/1000),(3*6.8/1000),(5*3.9/1000),(6*1.7/1000),(8*1/1000),(12*0.6/1000)

2.如何能讓資料剖析後的3個儲存格,再合迸為一個
例:0603B102K101NBBP0,我只要06(03)B(102)K101NBB(P)0,排成(3)(P)(102),再合併為1
個儲存格,不知道這一部份可不可以用VBA寫

3.我一個檔是以一週為單位,如何在剖析,排序,小計後,依日期的不同,將每一個日期移到
新開的工作表,使原本只有一個工作表的檔案,變成有八個工作表
(P.S每一個檔的日期都不一樣)

小弟已經忙了一個禮拜了,進度緩慢,煩請各位高手幫忙一下,解決小弟的困難,謝謝

贊助商連結


cinta3344
2002-04-14, 01:41 PM
最初由 Chirs 發表
1.如何讓儲存格的數字,自動乘上不同參數
如A1=2,則B1=2*5/1000,A1=3,則B1=3*6.8/1000 .... 依此類推
目前知道的參數有
(2*5/1000),(3*6.8/1000),(5*3.9/1000),(6*1.7/1000),(8*1/1000),(12*0.6/1000)
2.如何能讓資料剖析後的3個儲存格,再合迸為一個
例:0603B102K101NBBP0,我只要06(03)B(102)K101NBB(P)0,排成(3)(P)(102),再合併為1
個儲存格,不知道這一部份可不可以用VBA寫

3.我一個檔是以一週為單位,如何在剖析,排序,小計後,依日期的不同,將每一個日期移到
新開的工作表,使原本只有一個工作表的檔案,變成有八個工作表
(P.S每一個檔的日期都不一樣)

試試看:
1.-------------
Sub test()
dim arg1 as integer,i as integer
i = 1
Do Until Cells(i, "a") = ""
Select Case Cells(i, "a")
Case 1
arg1=5
Case 2
arg2=6.8
case else
msgbox "錯誤!"
End Select
cells(i,"b")=val(a1)*arg1/1000
i = i + 1
Loop
End Sub
2.mid函數就可搞定
字串相加用&
3.你的日期是一個range還是單一筆日期就要一個sheet,不過不論如何可以用sheets.add加入但是改名子前要先check有沒有已存在的sheetname,否則會有error

有點麻煩,我再想一下

Chirs
2002-04-16, 09:38 PM
感謝cinta3344兄的回應,雖然程式碼我看不太懂,但我會試著帶進去看看,再次感謝你的幫助,thanks