我遇到一些Excel問題,如果可能的話我想獲得一個宏來幫助我。Excel:不包括非數字行的百分比變化宏
問題:
我需要找到一個範圍列在一排(A1:A54)上的百分比差。喜歡的東西=((max(xy:xy))-(MIN(xy:xy))/(MIN(xy:xy)
但
我需要擅長從包含的東西是不是數字式排除行(有這些隨機地方負荷)。
我需要的東西,普遍的,這樣我可以在不同的工作簿等運行
我遇到一些Excel問題,如果可能的話我想獲得一個宏來幫助我。Excel:不包括非數字行的百分比變化宏
問題:
我需要找到一個範圍列在一排(A1:A54)上的百分比差。喜歡的東西=((max(xy:xy))-(MIN(xy:xy))/(MIN(xy:xy)
但
我需要擅長從包含的東西是不是數字式排除行(有這些隨機地方負荷)。
我需要的東西,普遍的,這樣我可以在不同的工作簿等運行
像這樣的東西忽略空白和文本的單元格
Function percentdifference(r As Range) As Double
With Application.WorksheetFunction
percentdifference = (.Max(r) - .Min(r))/.Min(r)
End With
End Function
您可以使用像下面這樣的「助手」功能,您的宏檢查小區內的數據類型,並套用公式只有當所有的單元格都是「Numeric」類型的時候。
Function CellType(c)
' Returns the cell type of the upper left
' cell in a range
Application.Volatile
Set c = c.Range("A1")
Select Case True
Case IsEmpty(c): CellType = "Blank"
Case Application.IsText(c): CellType = "Text"
Case Application.IsLogical(c): CellType = "Logical"
Case Application.IsError(c): CellType = "Error"
Case IsDate(c): CellType = "Date"
Case InStr(1, c.Text, ":") <> 0: CellType = "Time"
Case c.HasFormula: CellType = "Formula"
Case IsNumeric(c): CellType = "Numeric"
End Select
End Function
謝謝!我會試試看... – user3023065
你看到的其他數據類型。工作表函數的最大值和最小值跳過包含文本的單元格。 – gtwebb
我已經解決了我的問題與工作表,你是對的(雖然我可能不需要保證你:P)。謝謝您的幫助! – user3023065