anhtuan1066
Thành viên gạo cội




- Tham gia
- 10/3/07
- Bài viết
- 5,802
- Được thích
- 6,912
Vậy làm thế nào để có dc cái hình tôi đưa lên ở trên?Em nghĩ công thức có thể lỗi do sai kiểu dữ liệu khi một trong hai ô A1, A2 bỏ trống. Nếu nhập đúng kiểu dữ liệu lại "xịn" ngay...![]()
Vậy làm thế nào để có dc cái hình tôi đưa lên ở trên?
Xin nói rõ: Đây là hình thật (chứ ko phải do "ba xạo" mà ra)
Chính xác!Em test thấy B2=AND(A1;A2)
Khi A1= một số bất kỳ, A2 để trống hoặc ngược lại thì có kết quả như vậy.
Không phải bạn à!Vì Excel là một bảng tính nên tôi nghĩ khi để trống một cell nào đó thì Ex hiểu rằng ô đó có giá trị bằng 0 chứ không phải giá trị rỗng. Vì thế AND(A1,A2) vẫn là TRUE
P/S : (A1+A2)=0 khi A1 và A2 rỗng
Các bạn khác nghĩ sao?
Chưa chắc đâu nha! Nếu tại A2 bạn gõ nhăng nhít gì đó vào (dạng Text) thì sẽ được hàm AND thế này đây (dù kết quả vẫn =TRUE nhưng không giống hình đầu tiên)Em làm được 1 cái như của anh anhtuan1066.
Tại A1 gõ : =TRUE (kiểu logic).
Tại A2 gõ : 'FALSE (kiểu text).
Tại A3 gõ : =AND(A1,A2) sẽ cho kết quả là TRUE.
Nhận thấy không riêng gì với text "FALSE" mà với bất cứ cái gì dạng text ở A2 thì A3 cũng cho kết quả là TRUE cả --> AND(TRUE,text) = TRUE.
Với hàm AND, nếu A1 = True còn A2 = rổng (hoặc ngược lại) thì sẽ tạo ra cái nghịch lý kia!Anh Tuấn bật mí cho em đi, ngồi nghĩ mãi không ra
Quả thực em thấy không đơn giản tí nào? Rõ rành rành là hàm logic chỉ trả về True nếu tất cả các lôgic là true... Cái này đi ngược với logic rồi
Hic
Remarks
- The arguments must evaluate to logical values such as TRUE or FALSE, or the arguments must be arrays or references that contain logical values.
- If an array or reference argument contains text or empty cells, those values are ignored.
- If the specified range contains no logical values, AND returns the #VALUE! error value.
Mời các bạn tiếp theo chuyên mục giải trí bằng 1 thí nghiệm
- Mở 1 file Excel mới
- Gõ vào cell A1 công thức =DATE(1900,2,1)
- Gõ vào cell A2 công thức: =A1+1
- Kéo fill A2 xuống đến dòng thứ 31
Các bạn chú ý dòng thứ 29 và hãy nói xem năm 1900 có phải là năm nhuận hay không?
Các bạn chú ý dòng thứ 29 và hãy nói xem năm 1900 có phải là năm nhuận hay không?
- Các bạn hãy thử đặt tên sheet là History xem Excel nó "nói" cái gì
Tên riêng nghĩa là TÊN GÌ nhỉ? Hóa ra sheet History có tồn tại?Hic, Excel nó nói History là tên riêng, còn vì sao nó nói vậy thì...hic, anh anhtuan1066 đúng là có nhiều quái chiêu.
Với hàm AND, nếu A1 = True còn A2 = rổng (hoặc ngược lại) thì sẽ tạo ra cái nghịch lý kia!
Thật ra trong help của AND đã quy định:
Vì thế với thí nghiệm ở trên, cell rổng đã bị bỏ qua!
Có lẽ vấn đề nằm ở chổ: Hiển thị sai. Đầu tiên cell rổng dc xem = 0 nên ta thấy nó hiển thị kết quả của cell này là FALSE. Tuy nhiên sau khi tính toán thì nó phải tuân thủ quy định do nó đặt ra (cell rổng bị bỏ qua không tính, chỉ còn lại A1 = TRUE nên kết quả = TRUE)
Tên riêng nghĩa là TÊN GÌ nhỉ? Hóa ra sheet History có tồn tại?
???
Bạn tìm xem nó nằm ở mô?
Ha... ha...
Và đây là kết quả :Note Saving the workbook removes the History worksheet. To view the History worksheet after saving, redisplay it.
- On the Tools menu, point to Track Changes, and then click Highlight Changes. If the Track changes while editing check box is not selected, Microsoft Excel has not recorded any change history (change history: In a shared workbook, information that is maintained about changes made in past editing sessions. The information includes the name of the person who made each change, when the change was made, and what data was changed.) for the workbook.
- Select the When check box and click All.
- Clear the Who and Where boxes.
- Select the List changes on a new sheet check box.
- Click OK, and then click the filter (filter: To display only the rows in a list that satisfy the conditions you specify. You use the AutoFilter command to display rows that match one or more specific values, calculated values, or conditions.) arrows next to the column labels on the History worksheet (History worksheet: A separate worksheet that lists changes being tracked in a shared workbook, including the name of the person who made the change, when and where it was made, what data was deleted or replaced, and how conflicts were resolved.) to find the information you want.
Nói ko bằng chứng, bạn hãy đưa lên đây 1 file có sheet History thì mọi người mới tinEm tìm thấy cái này trên trang Web của MS.
.
Như ở trên, bạn đã tìm thông tin trên Google, vậy vụ này cũng tìm thế đi... Tin chắc bạn cũng sẽ phát hiện đây là 1 sai sót của MS từ những ngày đầu xây dựng OfficeCòn cái vụ năm nhuận vẫn chưa nghĩ ra.
Tôi xin trình bày các bước cho hiện sheet History đây:
Cột B và C công thức gần như nhau, thế mà khi Sort thì nó lại "phản ứng khác.Em thấy vẫn bình thường mà anh, bây giờ số 1 nằm tại ô A3 --> Sheet1!A3 = 1.
![]()
Tôi sưu tầm file này khá hay (phải nói là công phu thì đúng hơn)
Các bạn hãy mở file đính kèm dưới đây rồi làm như sau:
1> Bấm Ctrl + A để chọn toàn bộ bảng tính
2> Vào menu Format\Row\Height và gõ vào số 15.33
3> Vào menu Format\Column\Width và gõ vào số 2.4
Format xong, các bạn nhìn thấy điều gì?
Tôi mở chủ đề này để mỗi khi chúng ta làm việc với Excel sẽ cảm thấy rằng:Ôi trời, cái này độc đáo quá!
Hãy chú ý hình này:
![]()
Để ý thấy cell A1 có chứa Text "Nguyễn Anh Tuấn" (nhìn trên thanh Formula) nhưng tại sao nhìn trực tiếp vào cell A1 thì nó lại biến đi đâu mất?
Để cụ thể hơn, các bạn hãy tự khám phá trong file đính kèm này nhé
Hãy nói cho mọi người biết nguyên nhân của vấn đề
Nói ra xong nhiều khi thấy nó đơn giản đến ko ngờ:Khám phá ra chữ "Nguyễn Anh Tuấn" nằm bên dưới ô giống như bị bấm Ctrl + Enter nhưng lại không phải Ctrl + Enter.
Tóm lại là không hiểu.
Nếu mở file này ra sau file hehe thì sẽ bị ảnh hưởng bởi file he he. Mà file He he cũng không biết làm sao ra he he được![]()
![]()
![]()
![]()
Function SumIntersect(Rng1 As Range, Rng2 As Range) As Double
Dim Rng As Range
On Error Resume Next
Set Rng = Intersect(Rng1, Rng2)
SumIntersect = WorksheetFunction.Sum(Rng)
End Function
Dạ thưa có! Hàm SUM.Các bạn hãy nghiên cứu code này:
Cú pháp hàm:PHP:Function SumIntersect(Rng1 As Range, Rng2 As Range) As Double Dim Rng As Range On Error Resume Next Set Rng = Intersect(Rng1, Rng2) SumIntersect = WorksheetFunction.Sum(Rng) End Function
=SumIntersect(Vùng 1, Vùng 2)
Đây là SUM của tất các các cell nằm trong vùng GIAO giữa Vùng 1 và Vùng 2
Dùng code VBA viết cho yêu cầu này rất dể dàng, đúng không?
Vậy xin hỏi các bạn, trong các hàm Excel, có hàm nào có khả năng làm được điều tương tự như UDF này không?
Chính xác 100%, nó là khoảng trắng giữa 2 vùngDạ thưa có! Hàm SUM.
Muốn tính tổng vùng giao nhau giữa A1:B10 và B8:C12, gõ công thức như thế này:
=SUM(A1:B10 B8:C12)Giữa A1:B10 và B8:C12 là một khoảng trắng, chứ không phải là một dấu phân cách.
Tuy nhiên, nó chỉ ra kết quả khi 2 vùng giao nhau thật sự, chứ nếu dùng kiểu đó cho 2 vùng không giao nhau (A1:B10 và D7:F14 chẳng hạn) thì Excel sẽ báo lỗi #NULL!, nghĩa là nó chả biết tính toán cái gì cả.
Quả đây là một siêu cao thủ không thua kém gì cao thủ NDU đâu.Hôm nay vừa dạy các "đệ tử" về mạch điện đèn giao thông, bổng nhiên nghĩ ko biết Excel có làm được điều này ko?
Thế là bắt tay vào thử nghiệm, cuối cùng cũng tạm xong!... Quan trọng là dùng công thức (ko có tí code nào)
Các bạn mở file này, bấm F9 để thấy sự thay đổi của đèn (4 giây chuyển từ đèn này sang đèn khác)
He... he...
(Các bạn hãy cải tiến thêm nếu có khiếu thẩm mỹ)
Toàn bộ thuật toán nằm trong Define name và sheet ẩn... Vào đó xem sẽ hiểu liềnQuả đây là một siêu cao thủ không thua kém gì cao thủ NDU đâu.
Bạn làm thế nào vậy? Có thể hướng dẫn cho mình mở rộng tầm hiểu biết không?
Cám ơn nhiều!!!
Toàn bộ thuật toán nằm trong Define name và sheet ẩn... Vào đó xem sẽ hiểu liền
He... he...
Anh xem bài #43... Anh dùng bất cứ cách nào (VBA cũng được), miển sao có thể hiện được name và sheet ẩn là xong!Công thức ở đâu mà tôi tìm không thấy ?
Như mà làm sao để xem được Define name và sheet ẩn?Toàn bộ thuật toán nằm trong Define name và sheet ẩn... Vào đó xem sẽ hiểu liền
He... he...
1> Mở sheet ẩnNhư mà làm sao để xem được Define name và sheet ẩn?
Mình tìm hoài không thấy?
Sub Test()
Dim N As Name
On Error Resume Next
For Each N In ThisWorkbook.Names
N.Visible = True
Next
End Sub
Hình như chưa ai bị sự cố này nên không thấy quan tâm nhỉ? (Tôi nhớ không lầm thì đã lâu lắm rồi có 1 bạn hỏi vấn đề này trên GPE mà chưa ai giải quyết được!)
Không biết 1 ngày nào đó các bạn gặp 1 file như thế, các bạn sẽ xử lý ra sao? Gõ lại toàn bộ chăng?
Các bạn hãy thử xem, cố gắng bằng mọi cách (kể cả dùng google hổ trợ), sẽ có lợi cho các bạn, ít nhất là về mặt nâng cao kiến thức!
ANH TUẤN
Tạo sheet mới từ sheet1 nghĩa là sao hả bạn? Bạn gõ lại mọi thứ à?Em tao một sheet mới từ sheet1 thì thấy trở lại bình thường- đó có là cách khắc phục không?
- Cách khắc phục có thể dùng cách sau: Từ excel, dùng chức năng Open để mở file này, trong hộp thoại Open click vào mũi tên ở cạnh nút Open và chọn Open and repair....Có ai từng gặp tình trạng này không: File có 2 sheet, Validation list trên 1 sheet hoạt động bình thường, còn sheet kia thì dù có chỉnh sửa thế nào, mũi tên của Validation list cũng không xuất hiện
Các bạn hãy xem file đính kèm và cho biết:
- Cách phục hồi mũi tên của Validation list
- Liệu các bạn có thể "tái hiện" lại lổi trên trong 1 file mới hay không?
For Each obj In Sheet1.Shapes
obj.Delete
Next
Không phải thế mà chỉ cần nhấn giữ phim Ctrl và dùng chuột kéo thả sheet1 sang bên thì được một sheet mới "sheet1(2)" có dữ liệu của sheet1. Chắc anh không lạ gì cách này.(em có phải con bò đâu mà gõ lại hết dữ liệu)Tạo sheet mới từ sheet1 nghĩa là sao hả bạn? Bạn gõ lại mọi thứ à?
- Cách khắc phục có thể dùng cách sau: Từ excel, dùng chức năng Open để mở file này, trong hộp thoại Open click vào mũi tên ở cạnh nút Open và chọn Open and repair....
- Tái hiện có thể dùng cách sau: Tạo validation cho 1 ô bất kỳ ở Sheet1, sau đó chạy đoạn code này:
Không biết có đúng ý tác giả hay không???Mã:For Each obj In Sheet1.Shapes obj.Delete Next
Không phải thế mà chỉ cần nhấn giữ phim Ctrl và dùng chuột kéo thả sheet1 sang bên thì được một sheet mới "sheet1(2)" có dữ liệu của sheet1. Chắc anh không lạ gì cách này.(em có phải con bò đâu mà gõ lại hết dữ liệu)
Vấn đề này chỉ cần select all sheet1, copy sang sheet khác là ok rồi. Nhưng làm cách này thì chỉ có thể copy được value và format, còn trường hợp các công thức từ các sheet khác có tham chiếu đến sheet1 sẽ bị hỏng, nên repair khác với chép value là vậy bạn ạ, và tôi nghĩ cái quan trọng hơn ở đây là nguyên nhân gây ra lỗi, bạn xem cách tôi tạo ra lỗi thì sẽ biết rõ nguyên nhân, ở đây là khi ta tạo validation thì excel sẽ tạo ra 1 control tương ứng để quản lý ẩn hiện khi cần thiết(comment cũng tương tự), sau khi tạo ra mà ta xóa nó đi thì nó sẽ không có đâu nữa để hiện. Vậy bạn hãy tìm cách nào đó để khôi phục lại control đó là ok thôi, và cách đơn giản nhất theo tôi là Repair.Tôi đã thử cách của bạn, nhưng hình như cái List nó vẫn cứ trơ trơ, không thể nào tạo cại dropdown bạn ạ! Thử cách khác xem! Còn nếu Repair hoàn toàn thì xem như nó tạo workbook mới rồi, chỉ chép lại value mà thôi ----> Không phải cái cần khắc phục trong sheet1.
Vấn đề này chỉ cần select all sheet1, copy sang sheet khác là ok rồi. Nhưng làm cách này thì chỉ có thể copy được value và format, còn trường hợp các công thức từ các sheet khác có tham chiếu đến sheet1 sẽ bị hỏng, nên repair khác với chép value là vậy bạn ạ, và tôi nghĩ cái quan trọng hơn ở đây là nguyên nhân gây ra lỗi, bạn xem cách tôi tạo ra lỗi thì sẽ biết rõ nguyên nhân, ở đây là khi ta tạo validation thì excel sẽ tạo ra 1 control tương ứng để quản lý ẩn hiện khi cần thiết(comment cũng tương tự), sau khi tạo ra mà ta xóa nó đi thì nó sẽ không có đâu nữa để hiện. Vậy bạn hãy tìm cách nào đó để khôi phục lại control đó là ok thôi, và cách đơn giản nhất theo tôi là Repair.
To Chu.cuoi92: Nhấn Ctrl rồi click kéo để copy sheet đâu có được bạn.
Nhưng Sheet 1(2) này khi tạo Validation có mũi tên hiển thị không bạn? Tôi làm thì thấy nó vấn giống Sheet 1 chứ có khác gì đâu, trừ khi select all rồi copy sang 1 Sheet mới hoàn toàn.Được chứ bạn! Nắm chuột vào tab Sheet1, giữ Ctrl rồi kéo sang bên phải là có ngay một sheet mới tên là Sheet 1(2)
Sub Test()
ActiveSheet.Shapes("Drop Down 1").Delete
End Sub
Đoạn code này của bác về bản chất vẫn vậy, nhưng code này không phải lúc nào cũng chạy đúng được, nó chỉ chạy đúng khi ta tạo Validation đầu tiên, còn nếu ta vẽ vài cái hình, hoặc tạo vài cái comment trước thì code này không còn đúng nữa. Cái cần lưu ý ở đây là khi tạo Comment hoặc Validation thì excel sẽ tạo ra các Shape ẩn có tên bắt đầu là Comment ... và Drop Down .... Nên khi ai đó muốn sử dụng code để xoá sạch các đối tượng Shapes do người dùng tạo ra thì nhớ chừa mấy cái này ra, hoặc cứ xóa sạch đi cũng được nhưng phải biết cách khắc phục bằng Repair. Còn cơ chế Repair theo tôi là excel quản lý cái Drop Down đó dựa vào cái Validation của 1 ô nào đó, ở đây Validation vẫn còn thì việc khôi phục lại cũng không khó. Vấn đề là nó tổ chức như nào, và theo tôi lẽ ra khi ta tạo lại validation thì excel phải tự khôi phục lại thì ngon hơn ...Bạn rollover79 đưa giải pháp hoàn toàn chính xác
Còn giải pháp của bạn chu.cuoi92 nghe thì có vẽ rất đơn giản và rất thông minh ( nên làm sao bạn là con bò được cơ chứ) ... nhưng trên thực tế ta khó mà thực hiện được, nguyên nhân là:
- Trong 1 sheet, không chỉ có dử liệu thô mà còn chứa các công thức, các Define name và thậm chí chứa các tham chiếu trong công thức kiên kết từ các sheet khác
- Khi bạn chèn thêm sheet, copy dử liệu từ sheet bị lổi sang sheet mới thì buộc phải sửa lại toàn bộ công thức, define name và chua chát nhất là phải sửa tất cả tham chiếu trong các công thức ở tất cả các sheet...
===> Cuối cùng cái giải pháp tưởng chừng đơn giản ấy lại trở nên rắc rối và hoàn toàn không khả thi
----------------------
Còn cách tôi tái hiện lổi là dùng code sau:
Không cần dùng For, có bao nhiêu Validation cũng bị xóa sạchPHP:Sub Test() ActiveSheet.Shapes("Drop Down 1").Delete End Sub
-----------------
Chức năng Open and Repair quả thật lợi hại, có điều tôi vẫn không hình dung được MS Excel đã sửa lổi như thế nào
Function IntRng(Range As Range) As Boolean
Application.Volatile
IntRng = Not Intersect(Range, Selection) Is Nothing
End Function
Như thế này phải không Anh :=A2-SUM(B2)Có 1 file dử liệu thế này:
- Từ A2 đến A20 là các giá trị Number
- Từ B2 đến B20 có cell chứa Number, có cell chứa Text
- Tại C2 người ta nhập công thức: =SUM(A2-B2)
- Mong muốn của người dùng là: Nếu cell nào trong cột B chứa Text thì xem như nó = 0
--------------------------
Mới các bạn xem file đính kèm và sửa lại công thức sao cho đạt được kết quả như ý muốn, triệt tiêu được lổi #VALUE! mà không phải thêm bất cứ hàm nào (Chỉ có SUM mà thôi)...
--------------------------
Có người đã sửa công thức này như sau: =SUM(A2)-SUM(B2) và kết quả OK... Xin hỏi còn cách nào ngắn hơn không?
(bài này khá dể, các bạn thử xem)
Chính xác!Như thế này phải không Anh :=A2-SUM(B2)
còn cách nào nữa vậy? anh cho em học hỏi đi!Chính xác!
Còn cách khác nữa đấy
Hi... hi... Bài này dể quá nên giải nhanh nhỉ?
Công thức này chắc OK:còn cách nào nữa vậy? anh cho em học hỏi đi!
Muốn tìm Text gì thì đầu tiên là phài lấy đoạn text đó ra trước đã.Giả sử tôi có 1 file, trong đó tôi vẽ 1 Rectangle (bằng công cụ Drawing)... Bên trong Rectangle này tôi gõ 1 chuổi gì đó, chẳng hạn là Cộng hòa xã hội chủ nghĩa Việt Nam
Câu hỏi: Làm sao biết được 1 chuổi có nằm trong Rectangle hay không?
(Ví dụ tôi muốn tìm chuổi Việt Nam)
Sub Chay()
Dim str As String
On Error GoTo Loi
For Each Rc In ActiveSheet.Shapes
Rc.Select
[B]str = Selection.Text[/B]
MsgBox Rc.Name & Chr(10) & "CO Text" & Chr(10) & str
str = ""
Loi:
MsgBox Rc.Name & Chr(10) & "Khong co Text"
Next
End Sub
Topic này là Giải trí với các công thức Excel mà bạn!Muốn tìm Text gì thì đầu tiên là phài lấy đoạn text đó ra trước đã.
Lấy Text ra thì được rồi! Nhưng 1 điều kỳ lạ là nếu Rectangle cuối cùng mà không có text thì nó bị lỗi nhỉ?
Thân.Mã:Sub Chay() Dim str As String On Error GoTo Loi For Each Rc In ActiveSheet.Shapes Rc.Select [B]str = Selection.Text[/B] MsgBox Rc.Name & Chr(10) & "CO Text" & Chr(10) & str str = "" Loi: MsgBox Rc.Name & Chr(10) & "Khong co Text" Next End Sub
Mọi cách, tức bao gồm:Ẹc..
Công thức mà đụng đến Shapes luôn hả?
Đừng nói là Macro4 nha bác.
Thân.
Thế dùng Function VBA được không bác!- Giả sư cho trước vùng H10:K20 (tạm gọi là vùng 1)
- Dùng chuột quét chọn 1 vùng tùy ý (tạm gọi là vùng 2)
Để kiểm tra sự giao nhau giữa vùng 1 và vùng 2, nếu dùng VBA thì ta sẽ viết như sau:
Để kiểm tra, tôi gõ vào 1 cell nào đó (không thuộc vùng H10:K20) công thức =IntRng(H10:K20)PHP:Function IntRng(Range As Range) As Boolean Application.Volatile IntRng = Not Intersect(Range, Selection) Is Nothing End Function
- Quét chọn 1 vùng bất kỳ và bấm F9, nếu:
a) Vùng mà ta quét chọn có giao điểm với H10:K20 thì công thức trả về giá trị = TRUE-------------------------
b) Vùng mà ta quét chọn không có giao điểm với H10:K20 thì công thức trả về giá trị = FALSE
Xin hỏi: Có thể làm được yêu cầu như trên mà không dùng VBA hay không? (chỉ dùng công thức)
-------------------------
Bài này cũng khá hay và.. hóc... Xin mời các cao thủ ra tay! (Quan trọng là xác định được địa chỉ của Selection)
Là sao ta? Là hàm tự tạo à?Thế dùng Function VBA được không bác!
Thân.
Text = "Giải pháp Excel - Công cụ tuyệt vời của bạn "
=MID(Text,2,LEN(Text))&LEFT(Text,1)
Text =Sheet1!$A$1
Có phải là Format không vậy Bác?Có trò này cũng hay hay. Mời Xem đoạn video clip dưới đây
Chú ý cell A7, trong đó là những dấu - màu đỏ. Tại sao nó có thể tự động thêm bớt cho vừa khít với chiều rộng của cell nhỉ?
Hi... Hì...
*-;*-;*-;*-
Có phải là Format không vậy Bác?
Mã:*-;*-;*-;*-
Lâu lắm rồi mới ghé lại topic này...
Có 1 câu hỏi nhỏ xin mọi người giải đáp
- Tôi có 1 vùng dữ liệu được đặt name là Data1 ---> Xem hình
- Tôi muốn tạo 1 name khác tên là Data2 sao cho nó tham chiếu đến vùng màu vàng trong hình (tức bỏ qua tiêu đề dòng, cột)
Vậy xin hỏi công thức cho name Data2 sẽ là gì?
(Hãy nghĩ ra 1 công thức ngắn gọn nhất nhé)
=OFFSET(Data1,1,1,COUNTA(OFFSET(Data1,,,,1))-1,COUNTA(OFFSET(Data1,,,1))-1)
Với name Data2 công thức sẽ là:
PHP:=OFFSET(Data1,1,1,COUNTA(OFFSET(Data1,,,,1))-1,COUNTA(OFFSET(Data1,,,1))-1)
Không biết có đúng ý Thầy không, nhưng tham chiếu chắc chắn đúng.
=OFFSET(Data1,1,1,ROWS(OFFSET(Data1,,,,1))-1,COLUMNS(OFFSET(Data1,,,1))-1)
=OFFSET(Data1,1,1,ROWS(Data1)-1,COLUMNS(Data1)-1)
Mà công thức này có thể rút gọn thành:
------------------------------PHP:=OFFSET(Data1,1,1,ROWS(Data1)-1,COLUMNS(Data1)-1)
Thứ hai: Đã cho bài vào box này rồi thì đương nhiên phải có công thức nào đó độc đáo chứ (1 hàm duy nhất)
Ẹc... Ẹc...
Đương nhiên cóẸc ... Ẹc ... Nói như vậy là Thầy còn có công thức khác?
Đương nhiên có
Cũng chỉ là 1 hàm bình thường + 1 chút kỹ xảo (hiện tại tôi dùng hàm OFFSET)
Bạn thử nghĩ xem cũng bài này nhưng làm trong VBA thì bạn làm thế nào? Tức phương pháp nào trong VBA là ngắn gọn nhất thì ta cũng áp dụng vào công thức luôn
Ẹc... Ẹc... Nghiên cứu đi
Đương nhiên tôi muôn dùng cái "quái chiêu" thì cái "quái chiêu" ấy cũng phải có ứng dụng gì đó rồi... Mặc khác còn biết thêm những điều kỳ diệu trong Excel nữapác ndu... này có vẻ thích những công thức quái quái nhỉ, hihihi,
Có cần thiết không, khi dùng 3 hàm như trên cũng được
???
nghiên cứu chắc không khó tìm giải pháp thay thế
Đương nhiên tôi muôn dùng cái "quái chiêu" thì cái "quái chiêu" ấy cũng phải có ứng dụng gì đó rồi... Mặc khác còn biết thêm những điều kỳ diệu trong Excel nữa
Dùng kiểu thông thường chẳng có gì đáng nói cả ---> Tức chưa biết được trong công thức còn có thể tùy biến được thứ gì
Đương nhiên có
Cũng chỉ là 1 hàm bình thường + 1 chút kỹ xảo (hiện tại tôi dùng hàm OFFSET)
Bạn thử nghĩ xem cũng bài này nhưng làm trong VBA thì bạn làm thế nào? Tức phương pháp nào trong VBA là ngắn gọn nhất thì ta cũng áp dụng vào công thức luôn
Ẹc... Ẹc... Nghiên cứu đi
Nói vậy dùng các công thức thường cũng giải quyết được khối việc,
e rằng, nhiều quái chiêu quá khiến bảng tính chúng ta nặng thêm, và thêm rối nhiều hơn
Với câu này thực ra có ứng dụng hay...
Đúng là tôi nghĩ đã là hàm thì phải đặt trong ngoặc, tức là có hàm thì phải có đối số, chứ đâu để khơi khơi như vậy được!
---
Đúng là tiện dụng, khi ta chỉ cần đặt 1 name thôi, cách này cũng lập công thức được ngay cả trên bảng tính!
Đau đầu từ tối tới giờ, vẫn biết rằng trong VBA thì đây chính là anh chàng Intersect, nhưng mà trên Excel thì chịu chết... Lục tung khắp nơi... cuối cùng thì câu trả lời nằm ngay trong topic này... (nghe "đồn" bác BNTT nói vậy)Đương nhiên có
Cũng chỉ là 1 hàm bình thường + 1 chút kỹ xảo (hiện tại tôi dùng hàm OFFSET)
Bạn thử nghĩ xem cũng bài này nhưng làm trong VBA thì bạn làm thế nào? Tức phương pháp nào trong VBA là ngắn gọn nhất thì ta cũng áp dụng vào công thức luôn
Ẹc... Ẹc... Nghiên cứu đi
Túm lại, rất đơn giản, không quái chiêu chút nào.Khà khà khà, Excel thú vị quá! Đôi khi một khoảng trống lại đem đến cho ta một cảm giác thật tuyệt vời!!
Cũng chỉ là 1 hàm bình thường + 1 chút kỹ xảo (hiện tại tôi dùng hàm OFFSET)
Quái chiêu nằm ở cái khoảng trắng ấy sư phụ à (ít người biết à nghen)Túm lại, rất đơn giản, không quái chiêu chút nào.
Đấy đấy! Cái tôi muốn nói đến chính là Intersectvẫn biết rằng trong VBA thì đây chính là anh chàng Intersect
Nói vậy dùng các công thức thường cũng giải quyết được khối việc,
e rằng, nhiều quái chiêu quá khiến bảng tính chúng ta nặng thêm, và thêm rối nhiều hơn
Với câu này thực ra có ứng dụng hay , giải pháp là đặt data2 với CT: =data1 OFFSET(data1,1,1)
Vậy đợi các thành viên khác tiếp tục nghiên cứu hay đưa luôn lên giải pháp đây?
GP là đặt data2 với CT: =data1 OFFSET(data1,1,1)
Quả thật là nếu không đọc bài này thì nghiaphuc cũng không để ý rằng trong bài #90 đã đưa sẵn đáp án. Nghiaphuc lại tìm ra đáp án sau khi đọc bài #39 của bác BNTT cơ. Bởi vậy mới có chỗ này:Và khoảng trắng bí mật hơn đã được Một số thành viên ở đây đã thấy ngày từ bài #90 của topic này, hihihi (các bạn cứ bấm ctrl+A) sẽ thấy
http://www.giaiphapexcel.com/forum/...í-với-các-công-thức-Excel&p=390123#post390123
(lý d obôi trắng: để các thành viên cùng suy nghiên nên chưa bật mí - không ngờ có vẫn có người mở được bí mật - thật là GPE nhiều cao thủ)
Đau đầu từ tối tới giờ, vẫn biết rằng trong VBA thì đây chính là anh chàng Intersect, nhưng mà trên Excel thì chịu chết... Lục tung khắp nơi... cuối cùng thì câu trả lời nằm ngay trong topic này... (nghe "đồn" bác BNTT nói vậy)
Khà khà khà, Excel thú vị quá! Đôi khi một khoảng trống lại đem đến cho ta một cảm giác thật tuyệt vời!!
Và khoảng trắng bí mật hơn đã được Một số thành viên ở đây đã thấy ngày từ bài #90 của topic này, hihihi (các bạn cứ bấm ctrl+A) sẽ thấy
(lý d obôi trắng: để các thành viên cùng suy nghiên nên chưa bật mí - không ngờ có vẫn có người mở được bí mật - thật là GPE nhiều cao thủ)