Board logo

標題: 尋找(Find應用)題目 [打印本頁]

作者: hugh0620    時間: 2011-4-14 11:44     標題: 尋找(Find應用)題目

Dear 大大

     小弟為了學好find的使用~ 設計一些可能會撰寫VBA時遇到的情況~
       請各位大大來指導~ 好讓小弟與其他使用者能夠針對一些指令使用上~ 更了解與使用方便~
  
       如附檔[attach]5349[/attach]

       是一個很簡單的題目~
      1. 利用Find 找到相同日期的位置 (用B.Sheet的日期去找到A.Sheet中相對應的位置)
         q:小弟依之前跟大大請教的方式寫入~ 但卻是得到nothing的結果~ 不知道哪邊產生錯誤   
    2. 將資料帶入 (A欄位)
    3. 計算當月份累計 (B欄位)

      延伸問題~
      1. 利用Find 找到相同日期的位置
       1.1  如何取得該位置的 欄/列 值 (可用來指定依這個儲存格的位置來應用到其他指令上)
作者: Hsieh    時間: 2011-4-14 14:11

回復 1# hugh0620


    檢查你的搜尋範圍
作者: oobird    時間: 2011-4-14 20:11

st = Sheet1.Range("C3")
ed = Sheet2.Range("B3")
Set A = Sheet1.Range("c3:c34").Find(st, LookIn:=xlFormulas)
Set B = Sheet1.Range("c4:c34").Find(ed, LookIn:=xlFormulas)
作者: john2006168    時間: 2011-4-15 01:12

回復 3# oobird
好像不行
作者: hugh0620    時間: 2011-4-20 14:57

回復 4# john2006168


      Hsieh大大的提醒~ 檢查後了解範圍問題
    obird 大大的方式也是ok的
    加上自己find的練習~ 透過find 與相關指令的簡單應用~
      完成如附檔[attach]5655[/attach]
      1.對應相對的位置儲存資料
    2.對應相對的位置刪除資料
    相信這只是無限多種寫法的其中之一~ 僅供參考~
      若有其他針對find的應用~ 可貼上來研究討論~ ^^
作者: GBKEE    時間: 2011-4-20 16:11

回復 5# hugh0620
  1. Private Sub CommandButton1_Click()  '匯出資料
  2.     Dim Ed As Range, B As Range, S As Integer
  3.     Set Ed = Sheet2.Range("B3")
  4.     Set B = Sheet1.Range("C3:C34").Find(Ed)
  5.     If B Is Nothing Then MsgBox "找不到 " & Ed: Exit Sub
  6.     B.Offset(0, 1) = Ed.Offset(0, 1)
  7.     For Each C In Sheet1.Range("C3", B)
  8.         C.Offset(, 3) = S + C.Offset(, 1)
  9.         S = S + C.Offset(, 1)
  10.     Next
  11. End Sub
複製代碼





歡迎光臨 麻辣家族討論版版 (http://forum.twbts.com/)