C(25+25) -> tính tổng trong cell 25+25

Liên hệ QC

ST-Lu!

Love Wingchun
Tham gia
19/8/08
Bài viết
730
Được thích
546
Nghề nghiệp
Xích lô một thời
Ví dụ trong 1 cell A1 em gõ
bình thường em phải cộng nhẩm (dùng máy: 25 +25 = 50
sau đó em sẽ nhập C50 vào A1:kết quả em nhận được tại cell A1 = 50

nhưng giờ em muốn gõ phép toán trong dấu ngoặc đơn như bên dưới

C(25+25) em muốn có kết quả là 50 trong cell A1 thì phải dùng code như nào

Xin chỉ giúp em
 
Ví dụ trong 1 cell A1 em gõ
bình thường em phải cộng nhẩm (dùng máy: 25 +25 = 50
sau đó em sẽ nhập C50 vào A1:kết quả em nhận được tại cell A1 = 50

nhưng giờ em muốn gõ phép toán trong dấu ngoặc đơn như bên dưới

C(25+25) em muốn có kết quả là 50 trong cell A1 thì phải dùng code như nào

Xin chỉ giúp em
Không hiểu chổ màu đỏ ---> Sao nhập C50 thì kết quả lại = 50 nhỉ?
Cho file lên đi bạn ơi!
Có cảm giác bạn muốn biến chuổi biểu thức thành giá trị ---> Nếu đúng là vậy thì trên GPE đã có rất nhiều bài về đề tài này rồi còn gì
 
Ví dụ trong 1 cell A1 em gõ
bình thường em phải cộng nhẩm (dùng máy: 25 +25 = 50
sau đó em sẽ nhập C50 vào A1:kết quả em nhận được tại cell A1 = 50

nhưng giờ em muốn gõ phép toán trong dấu ngoặc đơn như bên dưới

C(25+25) em muốn có kết quả là 50 trong cell A1 thì phải dùng code như nào

Xin chỉ giúp em
Sao lại phải dùng đến code? Bạn gõ vào ô A1 là: =25+25 là xong. Còn nếu không thích có cái công thức đó nữa thì copy rồi paste special -> value.
 
Ví dụ trong 1 cell A1 em gõ
bình thường em phải cộng nhẩm (dùng máy: 25 +25 = 50
sau đó em sẽ nhập C50 vào A1:kết quả em nhận được tại cell A1 = 50

nhưng giờ em muốn gõ phép toán trong dấu ngoặc đơn như bên dưới

C(25+25) em muốn có kết quả là 50 trong cell A1 thì phải dùng code như nào

Xin chỉ giúp em

Không hiểu lắm, mình nghĩ bạn đang muốn nói đến hàm INDIRECT.
--> Làm đại : [A1] = INDIRECT("C" & 25+25).
 
To Thầy NDU: file của em cả một một đống code thầy ạh, em sợ gửi lên bị Thầy mắng
Sao lại phải dùng đến code? Bạn gõ vào ô A1 là: =25+25 là xong. Còn nếu không thích có cái công thức đó nữa thì copy rồi paste special -> value.


cũng là giá trị nhưng em gán thêm một ký tự ở đầu để quy định theo một điều kiện nào đó

ví dụ:
- nếu em gán chữ A ở đầu của một số ví dụ: A115
thì số 115 ở đây được hiểu là đơn giá
- nếu em gán chữ C ở đầu của một số thì giá trị của cell được hiểu là tổng tiền
ví dụ: C460 --> chính là 115+115+115+115

sau đó em dùng sự kiện selection change để tính toán với (đơn giá hay tổng tiền ở trên)

A, hay C chỉ là quy ước riêng của em thôi, nhưng ở số 460 ở trên em thường phải dùng máy tính tay cộng lại ra 460 sau đó em mới nhập C460 vào cell

Em xin hỏi có code nào ngắn, dẽ hiểu để mình gõ C(115+115+115+115) để target trả giá trị 460 không?

hiện tại với C460 thì em đang dùng code này
PHP:
If Not Intersect(Range("J2:J20000"), Target) Is Nothing Then
     
    If InStr(1, UCase$(Target.Text), "C") <> 0 And Target.Offset(, -1) = "" Then
      With Target
      .Value = Right(Target, Len(Target) - 1)
      .Offset(, -2) = Target / rate
    .Offset(, 1) = .Offset(, -3)
    .Offset(, 2) = .Offset(, 1) - Target
     End With
     End If
 End If
 
Lần chỉnh sửa cuối:
Thay vì C(115+115+115+115), sao bạn không gõ là =SUM(115,115,115,115) hay là ="C" & SUM(115,115,115,115)
 
em thấy hơi dài, nhưng vấn đề code như nào ạh

Có phải là bạn chỉ muốn tính tổng 115+115+115+115 không? Mình vẫn chưa hiểu, vậy thì =115+115+115+115 là được rồi, vừa ngắn hơn cách C... của bạn, sao phải dùng code hả bạn.

Nếu bạn vẫn muốn dùng code thì xài tạm cái này :

PHP:
Private Sub Worksheet_Change(ByVal Target As Range)
    If InStr(1, Target, "C") Then Target = Evaluate(Right(Target, Len(Target) - 1))
End Sub
 
Lần chỉnh sửa cuối:
Vậy tại sao không định dạng cột đơn giá là "A"#,### và cột tổng tiền là "C"#,### rồi gõ số và tổng thoải mái?
thí dụ gõ +115+120+145+240 sẽ tự động hiển thị là C620 mà vẫn tính toán được? Khỏi code kiết luôn?
 
Vậy tại sao không định dạng cột đơn giá là "A"#,### và cột tổng tiền là "C"#,### rồi gõ số và tổng thoải mái?
thí dụ gõ +115+120+145+240 sẽ tự động hiển thị là C620 mà vẫn tính toán được? Khỏi code kiết luôn?

He he...cám ơn bác
Làm như thê thì A với C còn ý nghĩa gì nữa

Vấn đề này em đã làm được rồi nhưng bắt buộc phải dùng code bác ạh
- Vấn đề ở đây do tính chất công việc, em chỉ để một cột thôi bác ạh
Em xin giải thích qua như sau
1. Trường hợp 1: Giá thu hộ đúng
- Cột A Thu hộ: 115
- Cột B: Sau thuế: 115/0.975 - > code tự chạy

trường hợp này đúng -> bỏ qua

2. Trường hợp sai giá (giá bên nước ngoài nhập trên hệ thống có cả thuế nhà thầu)
nhưng chỉ có một loại cont và 1 đơn giá
- Cột A thu hộ: ghi 236 (= 118*2) -> bên nc ngoài ghi
- Cột D: em nhập giá đúng là 115 -> em ghi A115

như vậy code sẽ lấy 236/115 - > dư 2 như vậy là 02 container
- Cột D giá thu hộ đúng: = 02*115 = 230 -> code chạy
- Cột E: là cột nước ngoài đòi theo giá cả thuế = 236 -> code chạy
- cột F: chênh lệch = thuế nhà thầu = 236-230 = 6 -> code chạy

p.s: cái này chỉ đúng khi số lượng cont < 35
3. Trường hợp sai giá (giá bên nước ngoài nhập trên hệ thống có cả thuế nhà thầu)
nhưng có nhiều loại đơn giá bên trong một vận đơn

- Cột A thu hộ = 195 (phía nước ngoài ghi = 77+118)
-
-> lúc này tại cột D: thay vì ghi đơn giá như trên em ghi tổng tiền và gõ
Ctongtien
-> ví dụ: C190 (190 = 75 + 115) -> nhập tay

như vậy cột F của em sẽ là 195 - 190 = 5 -> code chạy

khoản 5 này em sẽ giữ lại để nộp thuế bên VN

Mục đích của em chỉ đơn giản là trên một cột (tại một cell) mà mình làm được 2 trường hợp thôi.
như vậy A hay C theo theo cách làm của em, nếu chỉ dùng trên một cột mà dùng format là điều ko thể

Hic
 
Lần chỉnh sửa cuối:
Mục đích của em chỉ đơn giản là trên một cột (tại một cell) mà mình làm được 2 trường hợp thôi.
Tùy theo StLu thôi. Nhưng kể cả trường hợp này tôi cũng có thể làm được không cần code kiết:
- Dùng 1 cột nhỏ xíu chỉ để đánh A hoặc C
- Dùng 1 cột bình thường chỉ gõ số vào công thức cộng, không có ký tự, số hoàn toàn.
- Nếu cần thiết thì khi đóng khung, đóng khung 2 cột này không có đường kẻ đứng ở giữa. In ra vẫn đẹp như thường.

Vừa dễ nhập liệu, vừa trình bày y như cũ, vừa có thế tính toán trên cột số, ...

Thử so sánh 2 cách gõ:
1. C(115+115+115)
2. C [Tab] +115+115+115

Cách 2 vẫn nhanh hơn vì chỉ dùng phím bên bàn phím số, thay vì các dấu ngoặc phải nhấn shift, và nhất là không phải code kiết gì sất.

attachment.php
 

File đính kèm

  • Cotao.jpg
    Cotao.jpg
    19.9 KB · Đọc: 51
Lần chỉnh sửa cuối:
Tính tổng trong exel

em cần tính tổng như sau:
Cột A dòng 1:
3+5*4+3
Cột A dòng 2 có thể nhiều dòng
4+3*2
em cần ở cột B sẽ thành tổng của các phép tính trên cái này giống như trong phần mềm dự toán
nhờ các bác viết code giúp em với:
file mẫu:
 

File đính kèm

  • ViDu.rar
    64.9 KB · Đọc: 2
Lần chỉnh sửa cuối:
Ví dụ trong 1 cell A1 em gõ
bình thường em phải cộng nhẩm (dùng máy: 25 +25 = 50
sau đó em sẽ nhập C50 vào A1:kết quả em nhận được tại cell A1 = 50

nhưng giờ em muốn gõ phép toán trong dấu ngoặc đơn như bên dưới

C(25+25) em muốn có kết quả là 50 trong cell A1 thì phải dùng code như nào

Xin chỉ giúp em
Bạn dùng thử code này trong sự kiện Worksheet_Change :
If Not Intersect(Target, [J2:J20000]) Is Nothing Then
Dim Ch As String
Ch = Left(Target, 1)
If UBound(Split(Target, "+")) > 0 Then
Target = "=" & Right(Target, Len(Target) - 1)
Target = Ch & Target
End If
End If

Và bạn không cần nhập dấu (...) chỉ cần nhập A25+25
 
Web KT

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

Back
Top Bottom