Nhờ mọi người sửa giúp code để kết quả có số 0 đứng trước dấu phẩy (1 người xem)

Liên hệ QC

Người dùng đang xem chủ đề này

nhờ mọi người giúp với. Xin cảm ơn
 
Upvote 0
Bạn ơi khi mình diễn giải nó ko cho kết quả có số 0 đứng trước: [TABLE="width: 370"]
[TR]
[TD="class: xl847, width: 370"]5*1,8*0,6*0,07 = ,378[/TD]
[/TR]
[/TABLE]
mình muốn có số ko đứng trước như này
[TABLE="width: 370"]
[TR]
[TD="class: xl847, width: 370"]5*1,8*0,6*0,07 = 0,378[/TD]
[/TR]
[/TABLE]
Giúp mình với. Cảm ơn bạn
 
Upvote 0
Bạn ơi khi mình diễn giải nó ko cho kết quả có số 0 đứng trước: [TABLE="width: 370"]
[TR]
[TD="class: xl847, width: 370"]5*1,8*0,6*0,07 = ,378[/TD]
[/TR]
[/TABLE]
mình muốn có số ko đứng trước như này
[TABLE="width: 370"]
[TR]
[TD="class: xl847, width: 370"]5*1,8*0,6*0,07 = 0,378[/TD]
[/TR]
[/TABLE]
Giúp mình với. Cảm ơn bạn

Chỗ màu đỏ lấy ở đâu? kết quả để ở đâu? Sửa code nào?
-----------
Tôi kiểm tra thì kết quả 5*1,8*0,6*0,07 = 0.378 (dấu phân cách phần thập phân là dấu chấm)

Chưa hiểu bạn muốn sửa gì?
 
Lần chỉnh sửa cuối:
Upvote 0
số màu đỏ đó chỉ là một ví dụ diễn giải tính toán khối lượng tại cột e. Nghĩa là tại cột E nhập công thức diễn giải sau đó ấn enter thì cho ra kết quả. diễn giải thì code này ok rồi chỉ có điều những khối lượng ra kết quả nhỏ hơn 0 thì lại không có số 0 trước dấu phẩy. Code thi trong file sẵn rồi. Code này trước đây mình cũng tải của bạn nào đó trên giaiphapexcel.com về dùng. Mấy năm rồi ko rõ của bạn nào
 
Upvote 0
của mình nó vẫn là dấu phẩy và không có số 0 đằng trước như bạn. Mình muốn nhờ bạn xem và sửa lại code để có được số 0 đằng trước dấu phẩy
Option Explicit
Private Sub Worksheet_Change(ByVal Target As Range)
On Error GoTo thoat
Dim i As Integer
Dim dau As Integer, cuoi As Integer
Dim DL As String, DGiai As String
Dim gt As String
Application.ScreenUpdating = False
Application.EnableEvents = False
If Target.Column = 5 Then
If IsEmpty(Target) Or Cells(Target.Row, 1).Value <> 0 Then GoTo thoat1
If InStr(1, Target.Value, ":") > 0 Then
dau = InStr(1, Target.Value, ":")
Else
dau = 0
End If
If InStr(1, Target.Value, "=") > 0 Then
cuoi = InStr(1, Target.Value, "=") - 1
Else
cuoi = Len(Target.Value)
End If
If cuoi = dau Or cuoi < dau Then GoTo thoat1
DGiai = RTrim(LTrim(Left(Target.Value, cuoi)))
DL = RTrim(LTrim(Mid(Target.Value, dau + 1, cuoi - dau)))
DL = Replace(DL, ",", ".")
Target.Formula = DGiai & " = " & Round(Evaluate(DL), 3)
Target.Characters(Start:=Len(DGiai) + 4, Length:=Len(Round(Evaluate(DL), 3))).Font.ColorIndex = 3
Target.Interior.ColorIndex = xlNone
For i = Target.Row To 1 Step -1
If Cells(i, 1).Value > 0 Then
If DiengiaiTL(Cells(Target.Row + 1, Target.Column)) = 0 Then
Cells(i, 7).Formula = "=DiengiaiTL(E" & (i + 1) & ":E" & Target.Row & ")"
Else
gt = Cells(i, 7).Formula
Cells(i, 7).Formula = gt
End If
Exit For
End If
Next
GoTo thoat1
thoat:
Target.Interior.ColorIndex = 0
End If
thoat1:
Application.EnableEvents = True
Application.ScreenUpdating = True
End Sub

Và modules của nó như này:
Option Explicit
Function DiengiaiTL(Vung As Range)
Dim Cll As Range
Dim gt As String
Application.Calculation = xlCalculationManual
For Each Cll In Vung
gt = Cll.Value
If InStr(1, gt, "=") > 0 Then
gt = RTrim(LTrim(Right(gt, Len(gt) - InStr(1, gt, "="))))
gt = Replace(gt, ",", ".")
DiengiaiTL = DiengiaiTL + Evaluate(gt)
End If
Next
DiengiaiTL = Round(DiengiaiTL, 3)
Application.Calculation = xlCalculationAutomatic
End Function
 
Upvote 0
của mình nó vẫn là dấu phẩy và không có số 0 đằng trước như bạn. Mình muốn nhờ bạn xem và sửa lại code để có được số 0 đằng trước dấu phẩy
Do cài đặt trên máy bạn thôi.
Máy tôi vẫn có số 0 trước dấu phẩy mà.
Untitled.jpg
 
Upvote 0
Không phải kết quả ở cột G mà mình cần cái kết quả ở cột E mà cột G của mình vẫn có số 0. Bạn cho chuột vào cột E13 và nhấn enter xem kết quả sẽ bị mất số 0 trước dấu phẩy
 
Lần chỉnh sửa cuối:
Upvote 0
Không phải kết quả ở cột G mà mình cần cái kết quả ở cột E mà cột G của mình vẫn có số 0. Bạn cho chuột vào cột E12 và nhấn enter xem kết quả sẽ bị mất số 0 trước dấu phẩy

Hoàn toàn bình thường, tức là có số 0 trước phần thập thân (như đã nêu ở bài #5)
 
Upvote 0
Không phải kết quả ở cột G mà mình cần cái kết quả ở cột E mà cột G của mình vẫn có số 0. Bạn cho chuột vào cột E12 và nhấn enter xem kết quả sẽ bị mất số 0 trước dấu phẩy

Máy tôi, vào E13, xóa 0,378 Enter vẫn có lại 0,378 màu đỏ.
 
Upvote 0
Mình dùng mấy năm nay ở các máy tính khác nhau đều cho kết quả là không có số 0View attachment 170809
 
Upvote 0
Vậy không biết cài đặt thế nào để có kết quả như máy các bạn nhỉ Untitled2.jpg mình thì mình vẫn định dạng chấm và phẩy như hình
 
Upvote 0
Ý tôi bảo là nếu định nghĩa lớn/nhỏ hơn 0 của chủ thớt khác thường thì định nghĩa chấm/phẩy và thập phân cũng khó thể giống được.
 
Upvote 0
Web KT

Bài viết mới nhất

Back
Top Bottom