Board logo

標題: userform篩選的問題 [打印本頁]

作者: sppk22    時間: 2013-8-1 21:19     標題: userform篩選的問題

詳如表單內容userform1..
作者: sppk22    時間: 2013-8-2 20:11

回復 1# sppk22


    沒有人回覆我..唉
作者: sppk22    時間: 2013-8-3 15:48

回復 2# sppk22


    不知是否我問題有難度..能否大大提個恴見
作者: luhpro    時間: 2013-8-4 22:21

回復 1# sppk22
先單純就你想要找 *a 或 a* 形式文字的需求提供方式:
你可以使用 l = Instr(1, 儲存格, "a")
再判斷若 l = 1 則為 a* 形式
若 l >1 則為 *a 形式

至於你首篇裡的敘述,
我看不太懂你的需求,
可否提供一些範例結果畫面,
例如你輸入些什麼內容,
而篩選出的結果會顯示在哪裡...
作者: sppk22    時間: 2013-8-6 23:27

回復 5# luhpro


    那用成這種方式呢???請大大幫忙..感恩
作者: luhpro    時間: 2013-8-6 23:52

回復  luhpro
    那用成這種方式呢???請大大幫忙..感恩
sppk22 發表於 2013-8-6 23:27
  1. Sub nn()
  2.   Dim lRows As Long, lRow As Long
  3.   Dim iI%
  4.   
  5.   lRows = Cells(Rows.Count, 1).End(xlUp).Row
  6.   
  7. For lRow = 3 To lRows
  8.   With Cells(lRow, 1)
  9.     Select Case .Offset(, 5)
  10.     Case "同"
  11.       .Value = "*" & .Value
  12.       .Offset(, 3) = .Offset(, 4) * 1.1
  13.     Case "出"
  14.       .Value = .Value & "*"
  15.     End Select
  16.   End With
  17. Next lRow
  18. End Sub
複製代碼

作者: sppk22    時間: 2013-8-7 09:04

回復 7# luhpro


    謝謝大大,小弟測試了一下,有點問題
此程式如果執行多次,*會出現很多次,
能否只能出現一次呢?
且清除“出”或“同”能否回覆當初的值(没*號及清除*1.1)
作者: luhpro    時間: 2013-8-7 22:20

回復 8# sppk22
  1. Sub SetStart()
  2.   Dim lRows As Long, lRow As Long
  3.   Dim iI%
  4.   
  5.   lRows = Cells(Rows.Count, 1).End(xlUp).Row
  6.   
  7. For lRow = 3 To lRows
  8.   With Cells(lRow, 1)
  9.     Select Case .Offset(, 5)
  10.     Case "同"
  11.       If Left(.Value, 1) <> "*" Then
  12.         .Value = "*" & .Value
  13.         .Offset(, 3) = .Offset(, 4) * 1.1
  14.       End If
  15.     Case "出"
  16.       If Right(.Value, 1) <> "*" Then .Value = .Value & "*"
  17.     End Select
  18.   End With
  19. Next lRow
  20. End Sub
複製代碼
  1. Sub ClrStart()
  2.   Dim lRows As Long, lRow As Long
  3.   Dim iI%
  4.   
  5.   lRows = Cells(Rows.Count, 1).End(xlUp).Row
  6.   
  7. For lRow = 3 To lRows
  8.   With Cells(lRow, 1)
  9.     If Left(.Value, 1) = "*" Then
  10.         .Value = Mid(.Value, 2)
  11.         .Offset(, 3) = ""
  12.         .Offset(, 5) = "" ' 若不想清除 "出" 與 "同" 則刪除此行
  13.     ElseIf Right(.Value, 1) = "*" Then
  14.       .Value = Left(.Value, Len(.Value) - 1)
  15.     End If
  16.   End With
  17. Next lRow
  18. End Sub
複製代碼

作者: sppk22    時間: 2013-8-8 20:18

回復 9# luhpro


    感謝大大的協助...




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