J'ai un problème avec mon code, il ne peut pas afficher la plus petite et la plus grande valeur dans la colonne A. Je ne sais pas savoir où est le code manquant ou faux ...comment obtenir la plus petite (min) et la plus grande (max) valeur dans une colonne dans une feuille spécifique en utilisant VBA
mon programme ouvrir le fichier txt et entrer les données à la feuille Excel. par exemple les données dans la colonne A est:
0.23
0.19
0.19
0.13
0.15
0.18
0.19
0.25
0.25
0.22
0.13
et je tape mon code dans VBA:
Private Sub CommandButton1_Click()
Dim vMin, vMax
Dim mg As Range
Dim NOR, lastrow, currentrow As Long
filetoopen = Application.GetOpenFilename("Text File (*.txt),*.txt", , "Select", , False)
If VarType(filetoopen) = vbBoolean Then
Exit Sub
End If
Workbooks.OpenText filetoopen, Origin _
:=437, StartRow:=1, DataType:=xlDelimited, TextQualifier:=xlDoubleQuote _
, ConsecutiveDelimiter:=False, Tab:=True, Semicolon:=False, Comma:= _
False, Space:=False, other:=False, FieldInfo:=Array(Array(1, 1), Array(2, 1) _
, Array(3, 1), Array(4, 1), Array(5, 1), Array(6, 1), Array(7, 1), Array(8, 1), Array(9, 1), _
Array(10, 1), Array(11, 1), Array(12, 1), Array(13, 1), Array(14, 1), Array(15, 1)), _
TrailingMinusNumbers:=True
'get number of rows (row with value inside)-------------
With ActiveSheet
NOR = .Cells(Rows.Count, "A").End(xlUp).Row
End With
'GET SMALLEST & LARGEST VALUE FROM COLUMN A==========
With ActiveSheet
lastrow = NOR
For currentrow = 2 To lastrow
Set mg = ThisWorkbook.Sheets(1).Rows(currentrow)
'if row no data then no read------------------------
If WorksheetFunction.CountA(mg) = 0 Then
Else
vMin = Application.WorksheetFunction.Min(Columns("A"))
vMax = Application.WorksheetFunction.Max(Columns("A"))
End If
Next currentrow
End With
MsgBox "Minimum = " & vMin & ", " & "Maximum = " & vMax, vbInformation
MsgBox "last row A is = " & NOR
End Sub
Si je lance ce code, le MessageBox
ne peut pas afficher la valeur minimale (la plus petite) et Maximum (plus grand) valeur dans la colonne A.
J'espère que vous pouvez m'aider à résoudre le problème.
AAF
merci pour votre réponse ... Je l'essayer, mais pourquoi la valeur minimale et la valeur maximale sont 0? – aaf
Non, la valeur minimale est 0.13 et le maximum 0.25, rappelez-vous que mon ordinateur a une virgule comme séparateur décimal ... N'oubliez pas d'upvote et marquer comme répondu si c'est le cas. Merci. – ZeroWorks
Désolé ami, je confus .. comment remplacer le code pour le point comme séparateur décimal? merci pour votre aide – aaf