English Deutsch Français Italiano Español Português 繁體中文 Bahasa Indonesia Tiếng Việt ภาษาไทย
所有分類

小弟從外面匯至Excel的資料內容如下有5欄資料:
頻道1 轉速 總量值 電壓值 偏移值
(1) (100) ( 2.1) ( 8.5) ( 0.5)
(2) (120) (1.8) (8.4) (0.52)
(*) (*) (*) (*) (*)
(176) (3600) (2.0) (8.7) (0.58)
(*) (*) (*) (*) (*)
(400) (8080) (2.8) (8.7) (0.59)
頻道2 轉速 總量值 電壓值 偏移值
(1) (100) (3.5) (8.2) (0.49)
(2) (120) (3.4) (8.4) (0.5)
(*) (*) (*) (*) (*)
(176) (3600) (3.7) (8.6) (0.54)
(*) (*) (*) (*) (*)
(400) (8080) (3.6) (8.7) (0.55)
-------------------------------------------------------------------------------------------------------------
以上有10個頻道的資料,每頻道內的Data筆數是一樣的,例如這次匯進來有400筆Data,則每個頻道內都一樣有400筆Data,但每次匯進來的Data數量不固定,可能下次有500筆或1000筆Data。
請問如何以轉速欄位為範圍,在各頻道轉速100~3600範圍內,分別找出各頻道內總量值的最大值,並將各頻道最大值整列的數據複製起來,依頻道順序由上而下貼到空白儲存格。vba可解決嗎?謝謝各位。

2006-09-24 12:57:11 · 3 個解答 · 發問者 ? 3 in 電腦與網際網路 軟體

沙拉油前輩說的沒錯,我到沒想到附上這個連結,謝謝提醒,也煩請大家有空時幫忙一下,Thanks.

2006-09-26 13:43:53 · update #1

3 個解答

Sheet1!外面匯至Excel的資料內容  Sheet2!空白儲存格   A B  C   D  E    A  B1頻道1 轉速 總量值 電壓值 偏移值  頻道1 2.12 1  100  2.1 8.5  0.5   頻道2 3.53 2  120  1.8 8.4  0.52 . 頻道3 . 4頻道2 轉速 總量值 電壓值 偏移值5 1  100  3.5 8.2  0.496 2  120  3.4 8.4  0.57頻道3 轉速 總量值 電壓值 偏移值8.9.1首先將滑鼠指定在Sheet2!B1 定義名稱:〔插入〕〔名稱〕〔定義〕〔現有名稱〕輸入:轉速參照到公式輸入=INDIRECT("Sheet1!$B$"&MATCH(Sheet2!A1,Sheet1!A:A,0)+1&":$B$"&MATCH(Sheet2!$A2,Sheet1!A:A,0)-1)新增[現有名稱〕輸入:總量值參照到公式輸入:INDIRECT("Sheet1!$C$"&MATCH(Sheet2!A1,Sheet1!A:A,0)+1&":$C$"&MATCH(Sheet2!$A2,Sheet1!A:A,0)-1)新增B1公式=MAX((轉速>=100)*(轉速<=3600)*(總量值))先試著作如每頻道二項可完成,相信再來應沒問題INDIRECT最主要是尋求頻道位子開始與結束

2006-09-25 08:06:39 補充:
陣列公式輸入完公式同時按Ctrl+Shift+Enter

2006-09-25 22:06:34 補充:
依範本H2:=INDEX(A:A,MAX(IF((MAX((轉速>=100)*(轉速<=3600)*(總量值))=總量值),ROW(總量值),"")))輸入完公式同時按Ctrl+Shift+Enter 定義名稱:轉速=INDIRECT("Sheet1!$B$"&MATCH(Sheet1!$G2,Sheet1!$A:$A,0)+1&":$B$"&MATCH(Sheet1!$G3,Sheet1!$A:$A,0)-1)

2006-09-25 22:14:25 補充:
定義名稱:總量值=INDIRECT("Sheet1!$C$"&MATCH(Sheet1!$G2,Sheet1!$A:$A,0)+1&":$C$"&MATCH(Sheet1!$G3,Sheet1!$A:$A,0)-1)將公式右拉到L2,再下拉G2 Channel 1 修改為 頻道1G3 Channel 2 修改為 頻道2

2006-09-25 22:29:00 補充:
感謝沙拉油大大提供範本,有範本解答就輕鬆多了

2006-09-24 19:17:16 · answer #1 · answered by 顯栓 7 · 0 0

我想這應該也是 ryan 發問的,在底下的連結他有附上問題的範本。
http://www.excelhelp.net/cgi-bin/forum/topic.cgi?forum=8&topic=4809&show=0

2006-09-25 16:57:23 · answer #2 · answered by 沙拉油 5 · 0 0

 HIJKLM1  頻道位置總量值  2 頻道113.5  3 頻道2    4 頻道3    5 頻道4    6 頻道5    7 頻道6    8 頻道7    9 頻道8    10 頻道9    11 頻道10    12 資料終點=J24+J23   設資料在A1..En請如上圖輸入I欄輸入頻道1---頻道10J2輸入公式=MATCH(I2,A$1:A$20000,1)K2輸入公式=MAX(IF(INDIRECT("B"&J2+1&":B"&J3-1)<=3600,IF(INDIRECT("B"&J2+1&":B"&J3-1)>=100,INDIRECT("C"&J2+1&":C"&J3-1))))輸完公式同時按[Shift]+[Ctrl]+[Enter]使公式變成{=MAX(IF(INDIRECT("B"&J2+1&":B"&J3-1)<=3600,IF(INDIRECT("B"&J2+1&":B"&J3-1)>=100,INDIRECT("C"&J2+1&":C"&J3-1))))}COPY J2..K2 TO J11J12輸入公式 =J10+J11OK**I欄頻道名稱需和資料區頻道名稱一致解說 J2..J11 找出各頻道起點     K2..K11找出最大總量值,範圍(100--3600)

2006-09-24 21:10:20 · answer #3 · answered by Bill Yen 5 · 0 0

fedest.com, questions and answers