Lịch sử Visual Basic

Liên hệ QC

Pansy_flower

...nợ người, nợ đời...
Thành viên danh dự
Tham gia
3/6/06
Bài viết
1,611
Được thích
14,001
Nghề nghiệp
...thiết kế máy bay cho VOI tự lái...^.^
Bill Gates and Paul Allen had something different in mind. In the 1970's when M.I.T.S.'s Altair personal computer was being conceived Allen convinced Gates to help him develop a Basic Language for it. When M.I.T.S. answered with interest, The future of BASIC and the PC began. Gates was attending Harvard at the time and Allen was a Honeywell employee. Allen and Gates licensed their BASIC to M.I.T.S. for the Altair. This version took a total of 4K memory including the code and data used for a source code.
Gates and Allen then ported Basic to other various platforms and moved back to their hometown of Seattle where they had attended grade school together. It was at this time that the Microsoft Corporation began it's reign in the PC world. By the late 70's, BASIC had been ported to platforms such as the Apple, Commodore and Atari computers and now it was time for Bill Gates's DOS which came with a Basic interpreter. The IBM-DOS version of this interpreter became known as BASICA, and at the time IBM was in major competition with clones so it was setup to require the BIOS distributed with IBM computers. The version distributed with MS-DOS was GW-BASIC and ran on any machine that could run DOS. There were no differences between BASIC-A and GW-BASIC which seems to make IBM's idea useless.

Microsoft realized just how popular their BASIC interpreter was and decided to distribute a compiler so users could code programs that ran without an interpreter. QuickBasic was the solution Microsoft came up with. It was distributed on through the years until version 4.5. At this time Microsoft decided to release a product with more kick and started distributing PDS BASIC (Professional Development System) and ended it with version 7.1 (Also called QuickBasic Extended), PDS was a short lived idea and was not followed through to its true capabilities. [Though it was an improvement over QB4.5]. Microsoft got hooked on GUI's and started Visual Basic both a DOS and WIN version. The DOS version was ended at 1.0 with a professional update, Differences between VB for DOS and QB are not as much as one might think, in fact VB still compiles QB4.5 code and the professional edition will compile PDS7.1 Code. One last thing: PDS will compile to true OS/2 Code, VB-DOS Pro/std and QB4.5 will not.

Somewhere in the midst of all this a gentleman named Robert S. Zale had realized more of the Potential Basic was capable of and designed his own Compiler. Borland Inc. snatched this up and distributed it as TurboBasic, but Mr. Zale was soon to distribute his product on his own. It is now called PowerBasic and is up to version 3.1. PowerBasic is one of the more Powerful Compilers on the market and adds the idea of unsigned Variables along with Inline Assembly Language Code and several other nice additions to the Basic language. PB Inc. has also announced they will distribute an OS/2 version of PB and possibly a windows version, but claim they won't abandon their DOS users.


--------------------------------------------------------------------------------

Some other facts:
The first Basic considered to be a full language implemented on a microprocessor was Li Chen Wang's "Tiny Basic", which appeared in Dr. Dobbs.

Basic was the first product sold by Microsoft corporation, and also the first major case of software piracy - It was copied widely even before Microsoft made it available (Bill Gates lost track of a copy on paper tape during a computer show).

The name "BASIC" may have come directly or indirectly from the science of human languages. Before the second world war, C. K. Ogden wrote a series called "Basic English". This was a list of 850 English words which would serve to describe any other word in English (perhaps by using more than one).

Theo thời gian thể hiện như sau:
1/5/1964 Basic ->
_/7/1975 MS Basic ->
20/5/1991 Visual Basic 1.0 ->
_/3/1992 Visual Basic 2.0 ->
_/6/1993 Visual Basic 3.0 ->
_/9/1995 Visual Basic 4.0 ->
_/4/1997 Visual Basic 5.0 ->
16/6/1998 Visual Basic 6.0 ->
(Trong bộ Microsoft Visual Studio 6)
_/_/2001 Visual Basic 7.0/VB.Net
(Trong bộ Microsoft Visual Studio.Net gọi là "đọt nét")

Các bạn biết thêm là 1995 MS tung ra VB4.0 đã thêm vào môi một môi trường lập trình ứng dụng là VBE với ngôn ngữ lập trình là VBA - Visual Basic for Application với mục đích tăng sứac mạnh cho bộ Office.

Bill Gates và Paul Allen là 2 sáng lập viên đầu tiên của Microsoft. Allen là một trong những người giàu nhất nứac Mỹ, có công rất lớn trong BASIC nếu đo phải >=Bill nhưng bác Bill lại nổi tiếng hơn (trong phạm vi BASIC thời đó). Bill Gates lập trình ra BASIC khi còn 13 tuổi đang học trung học, không có một bằng cấp về IT. Nghe kể về Bill Gates, I chưa thấy ai mê mẩm lập trình và kinh doanh như bác ấy. Paul Allen thì tốt nghiệp bằng về IT. Khi ký được hợp đồng đầu tiên về bán BASIC cho máy tính Altair của MITS thì ông được mời về làm giám đốc PM cho MITS còn B.Gate vẫn ở quê. BASIC là sản phẩm đầu tay của Gates và là niềm tự hào của Ông.

Altair của MITS là chiếc máy tính đầu tiên trên thế giới với con chip 8080 do giám đốc tên là Richart(!?) tạo ra. cụm từ Personal Computer - PC cũng ra đời từ đây.
(Trích bài của anh Tuanktcdcn)
 
Lần chỉnh sửa cuối:
VBA LÀ GÌ?

VBA là viết tắt của cụm từ Visual Basic for Application. Nó là một ngôn ngữ lập trình được phát triển bởi Microsoft . Excel là một phần của bộ Office, nó bao gồm luôn cả ngôn ngữ VBA mà không hề "tính thêm tiền". Có thể nói VBA là một công cụ mà những người như tôi và bạn dùng để phát triển chương trình ứng dụng trong Excel nói riêng và bộ Microsoft Office nói chung.
Bạn đừng hiểu lầm VBA và VB (VB là viết tắt của cụm từ Visual Basic). VB là một ngôn ngữ lập trình giúp bạn tạo ra các chương trình ứng dụng có thể thực hiện độc lập. Mặc dù VBA và VB có nhiều cái chung, chúng hoàn toàn là hai ngôn ngữ khác nhau.

CHÚNG TA CÓ THỂ LÀM ĐƯỢC GÌ VỚI VBA?

Chúng ta có thể làm được rất nhiều thứ, sau đây chỉ là một số trong chúng:
_Lưu giữ các danh sách như danh sách khách hàng, danh sách sinh viên, danh sách hàng hoá.
_Lên kế hoạch.
_Phân tích dữ liệu.
_Phát triển các biểu đồ từ nguồn dữ liệu lưu trữ.
_Và còn rất nhiều điều khác nữa.
Dù với mục đích nào đi nữa thì tất cả đều có một điểm chung là nhằm thực hiện tự động một số thao tác (có thể trong Excel hay các chương trình khác). Đó có thể nói là khái quát về VBA.

Giải thích thêm:

Ví dụ bạn có thể tạo một Macro tự động đưa vào danh sách nhân viên bán hàng của công ty.
Thực hiện các công việc thường xuyên hay lập lại như báo cáo hàng tháng.
Tạo một lệnh người dùng. Bạn thường phải thực hiện một số lệnh từ menu của Excel, nếu vậy bạn hãy dành chút thời gian để phối hợp các lệnh ấy lại bằng các phím tắt hay nút lệnh.
Tạo menu người dùng, tạo thanh công cụ ngừơi dùng.
Tạo các hàm ngừơi dùng.
Tạo các Add-In cho Excel hay cho các mục đích riêng.

CÁC THUẬN LỢI VÀ BẤT LỢI CỦA VBA

-Thụân lợi:
  • Excel luôn thực hiện các công việc một cách chính xác theo cùng một cách.
  • Excel thực hiện các công việc nhanh hơn nhiều so với việc bạn ngồi bấm máy tính lộc cộc (Dĩ nhiên ngoại trừ bạn nào "thiệt là thông minh").
  • Nếu bạn là một lập trình viên Macro tốt thì Excel sẽ thực hiện các công việc một cách chính xác mà không hề báo lỗi.
  • Công việc (tasks) có thể thực hiện bởi một người không biết gì về Excel.
  • Bạn có thể làm các việc trong Excel mà người khác thì không thể. Điều này có thể làm cho bạn trở nên nổi tiếng!?
  • Thời gian cũng là yếu tố quan trọng, bạn "bắt Excel" phải làm trong khi bạn đi "uống cafe". Thật là thoải mái!

-Bất lợi:
  • Dĩ nhiên điều bất lợi đầu tiên là bạn phải học làm thế nào để viết chương trình trong VBA. May mắn là nó không khó như bạn có thể đã nghỉ về nó.
  • Nếu những người khác muốn dùng chương trình VBA của bạn, họ phải có cài phần mềm Microsoft Excel.
  • Nếu bạn viết chương trình không tốt, hay giải thuật bạn sai...mà chương trình bạn đã đưa vào sử dụng thì sẽ dẫn đến sai xót khó lường của việc phân tích dữ liệu.
  • VBA luôn luôn không ngừng phát triển để đạt đến mục tiêu của nó. Có thể chương trình của bạn viết sẽ không thể nào thực hiện trên các phiên bản mới.
Thế là chúng ta có thể mường tượng một phần nào về "Cô nàng VBA", chúng ta sẽ từng bước khám phá Cô nàng này đến khi nào các bạn cảm thấy "Yêu" Cô nàng này như tôi vậy.

Tham khảo và dịch từ "Excel VBA Programming For Dummies", tác giả John Walkenbach.

Chúc các bạn luôn khoẻ!
Lê Văn Duyệt.


Hỏi: Tôi thấy các tiền bối, anh levanduyet chẳng hạn rất giỏi về VB, vậy tôi muốn được như thế thì phải làm thế nào. Xin chỉ giúp.

Trả lời 1:

Cám ơn bạn đã nhận xét về tôi như vậy! Thực sự ra có rất nhiều 'cao thủ' mà tôi phải xưng làm 'sư phụ, sư phụ...'
Thật sự ra để hiểu biết được vấn đề thì phải 'ham thích', thứ hai là có điều kiện. Với các điều kiện như vậy thì ai cũng có thể hơn tôi! Sự học hỏi không bao giờ có giới hạn. Bất cứ sự học hỏi nào cũng đều như vậy! Còn sự thất bại sẽ cung cấp cho bạn kinh nghiệm, sự 'chai đá' trong va chạm, sự 'sâu sắc' trong nhận xét...và...còn nhiều điều nữa bạn ơi! Xin lỗi, tôi hơi bị lạc đề.
Chúc bạn một tuần làm việc vui vẻ, hạnh phúc và thành công.


Lê Văn Duyệt

PS: cao thủ như bác StonyHeartedMan, các Admin của ta, các bác Mod...Nhân tiện đây xin các bác cao thủ cùng chia sẻ với EFC kinh nghiệm của các Bác với! Rất mong sự nhiệt tình của các Bác.

Trả lời 2:

Cao thủ gì đâu, chỉ là vài chiêu search web thôi mà. Nhưng đúng là chẳng thiếu cái gì thật với mấy chiêu nhỏ này. (ko đáng để gọi là kinh nghiệm vì ...ai cũng biết làm)

Google "Visual Basic" + SourceCode
or:
http://msdn.microsoft.com/

That's it!

P/S: Tương tự như vậy, .NET, Java, v.v... Cái gì cũng có thể tìm thấy. Chẳng qua chỉ cần một sự online thường xuyên & sự đam mê học lập trình (như bác Duyệt chẳng hạn - em thua xa bác Duyệt về khoản này)

Àh, trong thế giới IT, rất ít người dám nói là mình là...cao thủ cả vì IT là cả 1 thế giới rộng lớn, lớn vô cùng. Mỗi người chỉ biết 1 phần cực nhỏ trong đó mà thôi. Ví dụ: Lập trình Game, Lập trình Đồ họa, Lập trình web, LT .... mà để master mỗi thứ thì có mà cả đời. Có người chỉ chuyên xử lý tiếng nói trong máy tính, có người thì chuyên lập trình để kết nối thiết bị ngoại vi, có người chuyên làm phần mềm xử lý ảnh, v.v... Đó là chưa kể trong giới làm PM thì còn có nhiều chuyện khác quan trọng hơn khá nhiều chuyện lập trình như quản trị dự án, phân tích yêu cầu, thiết kế (mức cao, mức chi tiết), testing, quản lý cấu hình, triển khai, đào tạo, làm tài liệu các loại, và vô vàn việc khác...


(hai2hai)

 
Ngôn ngữ VBA không những ứng dụng trong office mà còn được ứng dụng trong đồ họa, đó là chương trình AutoCad.

Trước kia, để lập các ứng dụng trong AutoCad, người ta thường dùng AutoLisp, Visual Lisp và bây giờ là VBA. Mệt thật!!! --=--
 
Xin thêm:

BASIC là từ viết tắt của "Beginner's All-Purpose Symbolic Instruction Code". Ngày xưa được đặt ra để dùng cho việc giảng dạy bởi vì các ngôn ngữ thời đó khá khó nuốt, cũng như Pascal được đặt ra để dạy lập trình vì Angol 60 quá rườm rà.

Vì có lịch sử khá cổ (thuộc đời FORTRAN, COBOL,...) nên BASIC còn giữ lại đặc tính "viết lệnh theo dòng". Có nghĩa là một lệnh được khởi ở ký tự đầu tiên không phải là khoảng trắng, và giới hạn đến ký tự xuống dòng - nếu dòng dài quá, cần phải tạm ngắt thì giữa 2 dòng phải có ký tự nối. Ngôn ngữ không theo luật "viết lệnh theo dòng" dùng ký tự khác để kết thức lệnh (ví dụ như ";" trong C)

Vì lỡ mang tên "Basic" cho nên ngôn ngữ này cố gắng gây dựng cho dễ hiểu và dùng lệnh qua từ tiếng Anh nhiều hơn ký hiệu (ngược với C, vì cố ý giảm thiểu code nên dùng ký hiệu nhiều hơn từ, và có nhiều ký hiệu phải hiểu theo ngữ cảnh). Ví dụ như để phân định phạm vi của một nhóm lệnh, Basic dùng cặp từ begin-end(loại nhóm) trong khi C dùng cặp ký hiệu {}. Trong Basic * luôn luôn là dấu nhân, trong khi C hiểu * theo vị trí của nó.
 
Nhiều người nhầm tưởng Bill Gate và Paul Allen đã tạo nên BASIC. Thực chất 2 ông chỉ là người đã tạo nên một trong số những trình biên dịch BASIC (tạm hiểu là dịch mã BASIC thành mã máy). Còn người tạo ra BASIC phải là John G. KemenyThomas E. Kurtz.
 
Nhiều người nhầm tưởng Bill Gate và Paul Allen đã tạo nên BASIC. Thực chất 2 ông chỉ là người đã tạo nên một trong số những trình biên dịch BASIC (tạm hiểu là dịch mã BASIC thành mã máy). Còn người tạo ra BASIC phải là John G. KemenyThomas E. Kurtz.

Phân biệt được Bill hay John thì có ích gì cho việc lập trình bằng VB ?
 
Phân biệt được Bill hay John thì có ích gì cho việc lập trình bằng VB ?
Thế lẫn lộn ông này với bà nọ chắc hữu ích cho việc lập trình? Giả dụ tôi nói Basic là do tôi viết thì liệu anh VetMini giãy nảy lên không? Đã là "lịch sử" thì nên đem đến nội dung chính xác.
 
Lần chỉnh sửa cuối:
Có bác nào có Video hướng dẫn chi tiết không ạ? Em đã tìm trên Youtube nhưng kết quả không được như mong muốn.
Vì không có điều kiện theo học lớp VBA cũng như không có người chỉ dẫn nên rất khó học hỏi.
Em cần hướng dẫn nhập môn.

Em cảm ơn!
 
Có bác nào có Video hướng dẫn chi tiết không ạ? Em đã tìm trên Youtube nhưng kết quả không được như mong muốn.
Vì không có điều kiện theo học lớp VBA cũng như không có người chỉ dẫn nên rất khó học hỏi.
Em cần hướng dẫn nhập môn.

Em cảm ơn!
Để sử dung được VBA trong Office thì trước tiên bạn cần nắm được những bước sau:
1> ENABLE MACRO: Cho phép Macro hoạt động.
2> RECORD MACRO: Ghi lại các lệch thực hiện dưới dạng VBA.
Bạn có thể search trên Youtube theo các từ khóa IN HOA ở trên và có thể thêm năm phiên bản (2003/2007/2010/2013)
Còn link sau đây là clip 3 phút minh họa đơn giản về các tạo ứng dụng bằng VBA.
Nắm được 2 ý niệm ở trên rồi thì tốt nhất là là bạn nên đầu tư khoảng vài chục cho một cuốn sách về VBA (hoặc VB6) mà bạn cảm giác có thể hiểu được nội dung (đừng quan trọng là nó dày hay mỏng, xuất bản năm nào) vì sẽ tiết kiệm được rất nhiều thời gian cho bạn. Nó sẽ mang đến cho bạn kiến thực lập trình căn bản.
Và khi biết dùng tính năng RECORD MACRO thành thục cộng với việc nắm được kiến thức lập trình căn bản, bạn hoàn toàn có thể tạo nên các ứng dụng từ đơn giản đến phức tạp một cách độc lập.
 
Lần chỉnh sửa cuối:
Web KT
Back
Top Bottom