2014-04-23 57 views
0

我找VBA將選擇並在此基礎上不斷一個我選擇的例子是從一個特定的範圍只複製數字或文字:VBA僅選擇數字或純文本

Column A 
xs 
s 
m 
l 
xl 
1 
1.5 
2 
2.5 
3 
3.5 

又會有怎樣的vba工作以選擇文本(xs,s,m)或數字(1,1.5,2)並複製它。

回答

0

您可以使用轉至特殊。如果你需要的VBA它,我建議你記錄自己這樣做:

1

選擇需要的選項: 2

2

你要找的Range.SpecialCells方法。 你可以在這裏找到msdn的文檔。 http://msdn.microsoft.com/en-us/library/office/ff196157(v=office.15).aspx

Range.SpecialCells(type as xlCellType, [Value]) 

返回一個範圍。所以,我們可以像這樣存儲該範圍。

dim rngNumbers as Range 
set rngNumbers = ActiveWorksheet.Range("A:A").SpecialCells(xlCellTypeConstants,xlNumbers) 

然後你只需要調用.Copy方法。 下面的潛艇應該做的伎倆沒有額外的對象。

Sub copyNumbers(source As Range, dest As Range) 
    source.SpecialCells(xlCellTypeConstants, xlNumbers).Copy dest 
End Sub 

Sub copyText(source As Range, dest As Range) 
    source.SpecialCells(xlCellTypeConstants, xlTextValues).Copy dest 
End Sub 

Sub main() 
    dim sourceRange as Range 
    Set sourceRange = ActiveSheet.Range("A:A") 

    copyNumbers sourceRange, ws.Range("D1") 
    copyText sourceRange, ws.Range("E1") 

End Sub