Tìm sự thay đổi của giá (x) để đạt doanh thu lớn nhất bằng code VBA hoặc công thức

Liên hệ QC

thao nguyen01

Thành viên thường trực
Tham gia
8/12/19
Bài viết
214
Được thích
25
Kính gửi anh/chị,

E đang muốn tìm giá trị x (delta của giá) để đạt doanh thu lớn nhất. E đã từng giải bài này nếu dùng solver nhưng x ở đây là sự thay đổi về giá (có thể delta x>0 hay cũng có thể <0), nên khi dùng solver có hạn chế nếu mình biết kết quả tính tay, vì lúc đó mới tính giá mới và số lượng mới tương ứng với giá tăng hay giảm. Nhưng e muốn tìm cách bao quát hơn. E đính kèm file và kết quả đúng bên cạnh. Anh/ chị xem giúp e ạ. E cảm ơn ạ.
 

File đính kèm

  • tim x.xlsx
    9.5 KB · Đọc: 18
Cái này tính bằng bảng độ nhạy (sensitivity analysis) hoặc goal seek.
 
Cái này tính bằng bảng độ nhạy (sensitivity analysis) hoặc goal seek.

dạ, độ nhạy: tìm các giá trị x tương ứng, doanh thu nào lớn nhất=>có nhiều lúc mình k tìm đúng giá trị của x nên sẽ k có doanh thu max ạ.

-goal seek: đối với bài này sẽ k đúng ạ. Vì x e cần tìm là delta x(chênh lệch giữa giá cũ và giá mới). Nên có thể giá cũ >giá mới hay giá cũ< giá mới, tức delta có thể âm hay dương=>sẽ ảnh hưởng đến công thức tính doanh thu khi chạy goal seek , e vd giá mới: nếu giá cũ< giá mới, giá mới =giá cũ+delta, nhưng giá cũ< giá mới thì giá mới=giá cũ-delta, (e k biết khi chạy goal seek biết khi nào delta >0 hay <0 ), vì vậy sẽ ảnh hưởng đến doanh thu tính max lúc chạy solver và goal seek sẽ sai ạ.

Anh có cách nào giúp e ạ. E cảm ơn ạ.
 
Kính gửi anh/chị,

E đang muốn tìm giá trị x (delta của giá) để đạt doanh thu lớn nhất. E đã từng giải bài này nếu dùng solver nhưng x ở đây là sự thay đổi về giá (có thể delta x>0 hay cũng có thể <0), nên khi dùng solver có hạn chế nếu mình biết kết quả tính tay, vì lúc đó mới tính giá mới và số lượng mới tương ứng với giá tăng hay giảm. Nhưng e muốn tìm cách bao quát hơn. E đính kèm file và kết quả đúng bên cạnh. Anh/ chị xem giúp e ạ. E cảm ơn ạ.

Theo công thức của bạn thì Doanh thu tỉ lệ thuận với X ==> X càng cao thì DT càng lớn
 
Theo công thức của bạn thì Doanh thu tỉ lệ thuận với X ==> X càng cao thì DT càng lớn

Dạ, vấn đề k nằm ở chỗ x tỷ lệ thuận với doanh thu anh? vì anh xem kỹ mô tả của e sẽ thấy, giá giảm, số lượng sẽ tăng, doanh thu tăng, nhưng cũng có trường hợp giá tăng, số lượng giảm nhưng doanh thu vẫn tăng. Quan trọng tốc độ tăng của cái nào nhanh hơn.

Nhưng bài này e đang vướng là với giá nào doanh thu sẽ max, giá giảm hay giá tăng và công thức như thế nào mới chuẩn để chạy goal seek. Anh xem file đính kèm giúp e nhé.
 

File đính kèm

  • tim x.xlsx
    9.7 KB · Đọc: 8
N
dạ, độ nhạy: tìm các giá trị x tương ứng, doanh thu nào lớn nhất=>có nhiều lúc mình k tìm đúng giá trị của x nên sẽ k có doanh thu max ạ.

-goal seek: đối với bài này sẽ k đúng ạ. Vì x e cần tìm là delta x(chênh lệch giữa giá cũ và giá mới). Nên có thể giá cũ >giá mới hay giá cũ< giá mới, tức delta có thể âm hay dương=>sẽ ảnh hưởng đến công thức tính doanh thu khi chạy goal seek , e vd giá mới: nếu giá cũ< giá mới, giá mới =giá cũ+delta, nhưng giá cũ< giá mới thì giá mới=giá cũ-delta, (e k biết khi chạy goal seek biết khi nào delta >0 hay <0 ), vì vậy sẽ ảnh hưởng đến doanh thu tính max lúc chạy solver và goal seek sẽ sai ạ.

Anh có cách nào giúp e ạ. E cảm ơn ạ.

Bạn thử dùng Goal seek nhé,
- Đặt giá X = 1, giá Y = X + 0,1: nếu Doanh thu MAX nghĩa là DT (Y) - DT (X) -> 0
- Kết quả là trung bình cộng của 2 giá

hơi mẹo tí, nhưng kết quả ok là dc
 

File đính kèm

  • tim x xitrum.xlsx
    16.7 KB · Đọc: 8
N


Bạn thử dùng Goal seek nhé,
- Đặt giá X = 1, giá Y = X + 0,1: nếu Doanh thu MAX nghĩa là DT (Y) - DT (X) -> 0
- Kết quả là trung bình cộng của 2 giá

hơi mẹo tí, nhưng kết quả ok là dc

dạ, e cảm ơn anh. Kết quả ra đúng ạ. Nhưng e chưa hiểu câu này ạ:
- Đặt X = 1, Y = X + 0,1: nếu Doanh thu chưa MAX nghĩa là DT (Y) - DT (X) -> 0 ?

Lúc nào e cũng cho Y=X+0,1 được k anh?
Tại sao doanh thu chưa Max nghĩa là DT (Y) - DT (X) -> 0 ? A giải thích giúp e với ạ. E cảm ơn anh?
 
Cái này liên quan đến đạo hàm, đường trong hình là đường Doanh thu
X và Y là 2 điểm làm mẫu và khoảng cách giữa 2 điểm chính là 0,1 (khoản cách này càng ngắn càng tốt)
lúc này Y và X sẽ chạy tới chạy lui với lệnh goal seek
và mình yêu cầu dừng ở đoạn đỉnh của hình -> X và Y đối xứng nhau (Y - X = 0)
1576572835829.png
 
Bài toán tính lãi ròng:
Phí cố đinh = F ---> fixed cost, là mọt hằng số. Bạn không bán đuọc món nào cũng phải trả phí này
Số lượng = Q ---> quantity
Giá bán = S ---> sale price
Giá thành = C ---> cost price, ở đây là hằng số
Doanh Thu = R = (S-C) * Q - F ---> bạn gọi là doanh thu nhưng thực ra con số bạn muốn là lãi ròng.

Nếu Q tăng giảm theo giá bán thì:
Q = f(S)
Nếu f là tuyến tính thẳng thì
Q = a*S + b : hệ số a, b bạn đã biết qua mô hình nội suy.

Như vậy:
R = (S-C) * (a*S + b) - F = a*S*S + b*S - a*C*S - b*C - F
R = a*S^2 + (b-a*C)*S - (b*C + F)
Là phương trình bậc 2.

Bạn có thể:
1. giải tay
2. giải bằng solver
3. giải bằng nội suy:
Lập một cột giá, cho nó tăng dần từng đơn vị
Vột kế tiếp, gõ hàm số bậc 2 trên
Kéo xuống. Lúc nào thấy nó đổi chiều thì dừng lại. Đó là điểm max.
Muốn lấy số lượng ở điểm này thì dùng hàm f(S) ở cột kế nữa.
 
Kính gửi anh/chị,

E đang muốn tìm giá trị x (delta của giá) để đạt doanh thu lớn nhất. E đã từng giải bài này nếu dùng solver nhưng x ở đây là sự thay đổi về giá (có thể delta x>0 hay cũng có thể <0), nên khi dùng solver có hạn chế nếu mình biết kết quả tính tay, vì lúc đó mới tính giá mới và số lượng mới tương ứng với giá tăng hay giảm. Nhưng e muốn tìm cách bao quát hơn. E đính kèm file và kết quả đúng bên cạnh. Anh/ chị xem giúp e ạ. E cảm ơn ạ.
Bài này doanh thu là phương trình bậc 2, lấy đạo hàm cấp 1 là ra thôi bạn, theo file bạn gửi doanh thu có dạng là : (25x/2+25)*(10-x-5) <=>25*(5/2x-1/2x^2+5-x) <=>25*(3/2x-1/2x^2+5) lấy đạo hàm (3/2x-1/2x^2+5) được 3/2-x=0=>x=3/2=1.5 là giá doanh thu se Max.
 
Cái này liên quan đến đạo hàm, đường trong hình là đường Doanh thu
X và Y là 2 điểm làm mẫu và khoảng cách giữa 2 điểm chính là 0,1 (khoản cách này càng ngắn càng tốt)
lúc này Y và X sẽ chạy tới chạy lui với lệnh goal seek
và mình yêu cầu dừng ở đoạn đỉnh của hình -> X và Y đối xứng nhau (Y - X = 0)
View attachment 230063
Dạ, e cảm ơn a nhiều ạ.
Bài đã được tự động gộp:

Bài toán tính lãi ròng:
Phí cố đinh = F ---> fixed cost, là mọt hằng số. Bạn không bán đuọc món nào cũng phải trả phí này
Số lượng = Q ---> quantity
Giá bán = S ---> sale price
Giá thành = C ---> cost price, ở đây là hằng số
Doanh Thu = R = (S-C) * Q - F ---> bạn gọi là doanh thu nhưng thực ra con số bạn muốn là lãi ròng.

Nếu Q tăng giảm theo giá bán thì:
Q = f(S)
Nếu f là tuyến tính thẳng thì
Q = a*S + b : hệ số a, b bạn đã biết qua mô hình nội suy.

Như vậy:
R = (S-C) * (a*S + b) - F = a*S*S + b*S - a*C*S - b*C - F
R = a*S^2 + (b-a*C)*S - (b*C + F)
Là phương trình bậc 2.

Bạn có thể:
1. giải tay
2. giải bằng solver
3. giải bằng nội suy:
Lập một cột giá, cho nó tăng dần từng đơn vị
Vột kế tiếp, gõ hàm số bậc 2 trên
Kéo xuống. Lúc nào thấy nó đổi chiều thì dừng lại. Đó là điểm max.
Muốn lấy số lượng ở điểm này thì dùng hàm f(S) ở cột kế nữa.
Dạ, e cảm ơn anh @VetMini nhiều ạ.
Bài đã được tự động gộp:

Bài này doanh thu là phương trình bậc 2, lấy đạo hàm cấp 1 là ra thôi bạn, theo file bạn gửi doanh thu có dạng là : (25x/2+25)*(10-x-5) <=>25*(5/2x-1/2x^2+5-x) <=>25*(3/2x-1/2x^2+5) lấy đạo hàm (3/2x-1/2x^2+5) được 3/2-x=0=>x=3/2=1.5 là giá doanh thu se Max.
Dạ. E cảm ơn anh @excel_lv1.5
Bài này e tính tay bằng cách tính bất đẳng thức Cauchy đạt giá trị lớn nhất khi dấu “=“ xảy ra. Cách 2 là dùng đạo hàm ạ. Nhưng vì e muốn làm nó trên excel. E muốn hỏi là mình có cách tính đạo hàm trên excel k ạ? Hay mình làm giống các cách của các anh ạ.
 
Lần chỉnh sửa cuối:
Bài toán tính lãi ròng:
Phí cố đinh = F ---> fixed cost, là mọt hằng số. Bạn không bán đuọc món nào cũng phải trả phí này
Số lượng = Q ---> quantity
Giá bán = S ---> sale price
Giá thành = C ---> cost price, ở đây là hằng số
Doanh Thu = R = (S-C) * Q - F ---> bạn gọi là doanh thu nhưng thực ra con số bạn muốn là lãi ròng.

Nếu Q tăng giảm theo giá bán thì:
Q = f(S)
Nếu f là tuyến tính thẳng thì
Q = a*S + b : hệ số a, b bạn đã biết qua mô hình nội suy.

Như vậy:
R = (S-C) * (a*S + b) - F = a*S*S + b*S - a*C*S - b*C - F
R = a*S^2 + (b-a*C)*S - (b*C + F)
Là phương trình bậc 2.

Bạn có thể:
1. giải tay
2. giải bằng solver
3. giải bằng nội suy:
Lập một cột giá, cho nó tăng dần từng đơn vị
Vột kế tiếp, gõ hàm số bậc 2 trên
Kéo xuống. Lúc nào thấy nó đổi chiều thì dừng lại. Đó là điểm max.
Muốn lấy số lượng ở điểm này thì dùng hàm f(S) ở cột kế nữa.

dạ anh @VetMini xem giúp e ạ. Trường hợp anh nói

3. giải bằng nội suy:
Lập một cột giá, cho nó tăng dần từng đơn vị
Vột kế tiếp, gõ hàm số bậc 2 trên
Kéo xuống. Lúc nào thấy nó đổi chiều thì dừng lại. Đó là điểm max.
Muốn lấy số lượng ở điểm này thì dùng hàm f(S) ở cột kế nữa.

Dạ, e đã làm thử nhưng giá trị đổi chiều không phải max ạ. E không biết e sai chỗ nào ạ, Anh @VetMini xem giúp e ạ. E đính kèm file bên dưới ạ. E cảm ơn ạ.
 

File đính kèm

  • tim x xitrum.xlsx
    18.4 KB · Đọc: 8
Lần chỉnh sửa cuối:
Giá bán của bạn đặt sai tét bét hết.

1576637878068.png

Giá được đặt từ 0 đến 5.5.
Lãi tăng từ 125 đến 150 (giá 1.0), qua 153.1 (giá 1.5) là tối đa, xuống trở lại 150 (giá 2.0)...
Độ tăng/giảm (đạo hàm) có trị dương từ 0 đến gần 1.5; trị âm từ (gần) 1.5 đến 5.5
Toán giải tích lớp 11: Đạo hàm là tan/tg (độ dốc) của tiếp tuyến của đường biểu diễn. Tan đổi dấu khi hàm số đạt local max/min. Nếu đổi từ dương qua âm thì là max, và âm sang dương thì là min.
 
Lần chỉnh sửa cuối:
Giá bán của bạn đặt sai tét bét hết.

View attachment 230096

Giá được đặt từ 0 đến 5.5.
Lãi tăng từ 125 đến 150 (giá 1.0), qua 153.1 (giá 1.5) là tối đa, xuống trở lại 150 (giá 2.0)...
Độ tăng/giảm (đạo hàm) có trị dương từ 0 đến gần 1.5; trị âm từ (gần) 1.5 đến 5.5
Toán giải tích lớp 11: Đạo hàm là tan/tg (độ dốc) của tiếp tuyến của đường biểu diễn. Tan đổi dấu khi hàm số đạt local max/min. Nếu đổi từ dương qua âm thì là max, và âm sang dương thì là min.

dạ, e hiểu rồi ạ. Em cảm ơn anh @VetMini nhiều lắm ạ.
 
Lưu ý:
Bài toán tôi nêu ra ở bài #9 là bài toán căn bản tính giá bán. Nó dựa trên các con số tuyệt đối: giá thành, giá bán, số lượng, lãi ròng...
Các thông số sử dụng trong bài toán của bạn không phải là tuyệt đối. Chúng là con số tương đối: tăng/giảm giá bán, tăng/giảm số lượng, tăng/giảm lãi...
 
Lưu ý:
Bài toán tôi nêu ra ở bài #9 là bài toán căn bản tính giá bán. Nó dựa trên các con số tuyệt đối: giá thành, giá bán, số lượng, lãi ròng...
Các thông số sử dụng trong bài toán của bạn không phải là tuyệt đối. Chúng là con số tương đối: tăng/giảm giá bán, tăng/giảm số lượng, tăng/giảm lãi...

Dạ. E cảm ơn anh @VetMini ạ. Dạ, bài của e là tăng/giảm giá bán: con số tương đối ạ. Nhưng e đang thắc mắc là giữa tương đối và tuyệt đối khác nhau chỗ nào ạ. Về ý nghĩa phải không anh? Vì e thấy kết quả theo cách anh @VetMini đúng ạ.
Bài đã được tự động gộp:

Lưu ý:
Bài toán tôi nêu ra ở bài #9 là bài toán căn bản tính giá bán. Nó dựa trên các con số tuyệt đối: giá thành, giá bán, số lượng, lãi ròng...
Các thông số sử dụng trong bài toán của bạn không phải là tuyệt đối. Chúng là con số tương đối: tăng/giảm giá bán, tăng/giảm số lượng, tăng/giảm lãi...
Dạ. Giá bán của anh là giá bán mới. Nên khi tính ra giá bán mới, phải trừ giá bán cũ mới ra số e tìm. Còn phương trình bậc 2 e làm là theo giá tăng thêm. E hiểu như vậy đúng k anh @VetMini
 
Lần chỉnh sửa cuối:
Cái bảng thông số sẽ làm khác nhau.
Bảng của tôi, làm theo bài #9 sẽ như thế này:

1576646235582.png.
.
Đấy là nếu tôi đã có thông số alpha và beta diễn tả liên hệ giữa giá bán và số lượng bán
Nếu không có thông số này mà chỉ có ước tính giá bán -> số lượng thì bảng hơi khác 1 chút.
1576646043848.png

Dân kế toán thực sự sẽ dùng bảng này để vẽ chart.

Chú: những thông số trên là do tôi tự chế, không phải là thông số bài toán của bạn.
 
Cái bảng thông số sẽ làm khác nhau.
Bảng của tôi, làm theo bài #9 sẽ như thế này:

View attachment 230103.
.
Đấy là nếu tôi đã có thông số alpha và beta diễn tả liên hệ giữa giá bán và số lượng bán
Nếu không có thông số này mà chỉ có ước tính giá bán -> số lượng thì bảng hơi khác 1 chút.
View attachment 230102

Dân kế toán thực sự sẽ dùng bảng này để vẽ chart.

Chú: những thông số trên là do tôi tự chế, không phải là thông số bài toán của bạn.

Dạ, e hiểu rồi ạ. Hi. E cảm ơn anh @VetMini nhiều lắm ạ.^^.
 
Web KT
Back
Top Bottom