找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 601|回复: 9

[求助]:有辦法 在sheet中 以多個參數 選出某筆資料的其他值嗎

[复制链接]
发表于 2006-4-27 09:34:40 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?立即注册

×
在VBA中
我在 Sheet1 中有一個表
AA BB CC DD EE
01 B1 12 22 33
02 B1 13 24 34
03 B2 14 25 35

要如何 傳參數 AA(01) BB(B1) CC(12) 來取得
DD(22) ,EE(33)
的值 回到 VBA的 程式中 
並使用它呢

麻煩了!
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
发表于 2006-4-27 10:43:00 | 显示全部楼层
没看太明白。感觉不是很难
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

 楼主| 发表于 2006-4-27 11:15:29 | 显示全部楼层
比如我有一個 Sheet1  的 內容
她是先經過 SQL 把資料 全部貼到 Sheet1
但 我在VBA 裡面 會有一批資料 要 利用 Sheet1 的內容 篩選出 所對應的 其他欄位值
比如 以
01 當作 AA 欄的 篩選條件
B1 當作 BB 欄的 篩選條件
12 當作 CC 欄的 篩選條件
她結果應該對應到
AA BB CC DD EE
01 B1 12 22 33  
這一欄
於是 我想要取得
DD欄為 22
EE欄為 33
的值 給VBA 理的程式使用

請問 這要如何撰寫 呢
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2006-4-27 11:20:28 | 显示全部楼层
i=1
do while Cells("AA1").Value<>""
if cells("AA"& cstr(i)).value="01" and cells("BB"& cstr(i)).value="B1" and cells("CC"& cstr(i)).value="12" then
    valueDD=cells("DD"& cstr(i)).value
    vlaueEE=cells("EE"& cstr(i)).value
    exit loop
end if
i=i+1
loop
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

 楼主| 发表于 2006-4-27 11:49:20 | 显示全部楼层
謝謝 tennicse  指導
因為初學,所以 有在請教一下
1. Cells("AA1").Value<>""  ,應該要如何解釋 比較好, 她是到A:A1 的Cells嗎
2. 有辦法把它包成一個 function
   然後 要如何 傳回 2個值
  供 呼叫的 程式 分別 使用這兩個值

其中 我的AA BB  CC是
分別位於A1 ,A2,A3 的自訂欄位名稱

麻煩您了!
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2006-4-27 14:27:05 | 显示全部楼层
Cells("AA1").Value:AA1单元格的值

public function ReturnValue(ValueDD as single,ValueEE as single) as boolean
i=1
do while Cells("A"&cstr(i)).Value<>""
if cells("A"& cstr(i)).value="01" and cells("B"& cstr(i)).value="B1" and cells("C"& cstr(i)).value="12" then
valueDD=cells("D"& cstr(i)).value
vlaueEE=cells("E"& cstr(i)).value
return true
end if
i=i+1
loop
return false
end function
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

 楼主| 发表于 2006-4-27 15:38:45 | 显示全部楼层
謝謝  tennicse
想再請教一個問題
若是 我
function getArray(cpnr AS Varient) AS String()

   Dim MyStr(1) As String  '定一維陣列 ,有2個
   MyStr(0) = cunr
    MyStr(1) = shto
.....
   getArray = MyStr
end function

sub WW()
請我要如何設定 才能取得 該 Array
endsub
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2006-4-27 16:20:11 | 显示全部楼层
getArray函数将Mystr作为一个参数,在function中修改Mystr的结果在function结束后不会丢失,可以拿来应用。这种传递参数的方法与Byval传递参数有所差别。
建议学习一下函数传递 ByVal 和 ByRef 的区别与使用。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

 楼主| 发表于 2006-4-28 14:43:05 | 显示全部楼层
感謝 tennicse 幫忙
請問  ByVal 和 ByRef 的区别与使用  哪邊有資料可找呢
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2006-4-28 14:51:08 | 显示全部楼层
百度 google
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|申请友链|Archiver|手机版|小黑屋|辽公网安备|晓东CAD家园 ( 辽ICP备15016793号 )

GMT+8, 2024-11-22 21:57 , Processed in 0.196654 second(s), 49 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表