Giúp em lập trình VBA trong excel để dịch Anh Việt

Liên hệ QC

kieuanh86

Thành viên mới
Tham gia
1/12/10
Bài viết
27
Được thích
3
Nghề nghiệp
Nhân viên hành chính
Chào cả nhà!
Em có một bài toán có thể coi là rất khó. Rất mong được cả nhà giúp đỡ.
Em có 1 file tác nghiệp excel bằng tiếng anh. Sếp của em muốn em viết code để dịch file văn bản đó ra tiếng việt một cách tự động mà không phải là dùng các phần mềm dịch như Lacviet, hay Evtran,.... Em đã tìm hiểu về ngôn ngữ lập trình VBA trong excel nhưng vẫn không có đáp án nào cho bài toán này. Em gửi file(đính kèm đó) cả nhà có ý tưởng gì giúp em với nhé!!!!
Các anh em IT pro ơi giúp em với nhé!
Tks cả nhà!!!!!
!!!!!!!!!!
 

File đính kèm

  • 123.rar
    185.2 KB · Đọc: 121
Chào cả nhà!
Em có một bài toán có thể coi là rất khó. Rất mong được cả nhà giúp đỡ.
Em có 1 file tác nghiệp excel bằng tiếng anh. Sếp của em muốn em viết code để dịch file văn bản đó ra tiếng việt một cách tự động mà không phải là dùng các phần mềm dịch như Lacviet, hay Evtran,.... Em đã tìm hiểu về ngôn ngữ lập trình VBA trong excel nhưng vẫn không có đáp án nào cho bài toán này. Em gửi file(đính kèm đó) cả nhà có ý tưởng gì giúp em với nhé!!!!
Các anh em IT pro ơi giúp em với nhé!
Tks cả nhà!!!!!
!!!!!!!!!!
Nhớ có lần tôi đã làm bài tương tự thế này rồi! Cách làm như sau:
- Tạo 1 bảng tra ANH - VIỆT (cái này tự ta soạn thảo)
- Viết code dùng phương thức Replace để thay thế (dựa vào bảng tra)
- Có thể duyệt qua nhiều file rồi Replace cùng lúc
---------------
Xem bài này: http://www.giaiphapexcel.com/forum/...-để-tạo-hàm-thay-thế-giống-Ctrl-H-cho-nhiều-ô
 
Upvote 0
Nhớ có lần tôi đã làm bài tương tự thế này rồi! Cách làm như sau:
- Tạo 1 bảng tra ANH - VIỆT (cái này tự ta soạn thảo)
- Viết code dùng phương thức Replace để thay thế (dựa vào bảng tra)
- Có thể duyệt qua nhiều file rồi Replace cùng lúc
---------------
Xem bài này: http://www.giaiphapexcel.com/forum/...-để-tạo-hàm-thay-thế-giống-Ctrl-H-cho-nhiều-ô
Cám ơn Pro ndu96081631 nhé! Có thể hướng dẫn em chi tiết hơn 1 chút được không ah!
Em mới bắt đầu học lập trình VBA nên chưa có nhiều kiến thức cho lắm. Vì đây là bài toán khó và cũng là nhiệm vụ quan trọng em phải hoàn thành. Giúp em nhé, em cám ơn rất nhiều!!!!
 
Upvote 0
Cám ơn Pro ndu96081631 nhé! Có thể hướng dẫn em chi tiết hơn 1 chút được không ah!
Em mới bắt đầu học lập trình VBA nên chưa có nhiều kiến thức cho lắm. Vì đây là bài toán khó và cũng là nhiệm vụ quan trọng em phải hoàn thành. Giúp em nhé, em cám ơn rất nhiều!!!!
Bạn chưa rành về lập trình thì tôi giúp bạn, OK! Nhưng như đã nói ở trên, bạn phải lập ra 1 danh mục những từ nào cần dịch từ tiếng Anh sang tiếng Việt (bảng tra gồm 2 cột: cột tiếng Anh và cột bên cạnh là tiếng Việt tương đương) ----> Đưa bảng tra ấy lên đây, phần còn lại tôi sẽ làm cho
 
Upvote 0
Bạn chưa rành về lập trình thì tôi giúp bạn, OK! Nhưng như đã nói ở trên, bạn phải lập ra 1 danh mục những từ nào cần dịch từ tiếng Anh sang tiếng Việt (bảng tra gồm 2 cột: cột tiếng Anh và cột bên cạnh là tiếng Việt tương đương) ----> Đưa bảng tra ấy lên đây, phần còn lại tôi sẽ làm cho
vâng, em xin gửi 1 file làm ví dụ, giúp em với nhé vì món này em còn dốt lắm, cho em hỏi thêm luôn em còn rất nhiều tác nghiệp khác và nhiều từ cần phải dịch nữa sau này em vẫn có thể thêm tiếp vào file này được ko ah?
Hướng dẫn em cách thực hiện chi tiết với nhé vì em ko phải dân it pro cho lắm, đồng thời hướng dẫn em thêm nút button vào Excel luôn nhé(nhiều vấn đề em chưa biết hiii, nên em hỏi nhiều vậy). Em cám ơn rất nhiều!!!! Em gửi file đính kèm bên dưới nhé!
 

File đính kèm

  • FileTN.xlsx
    8.8 KB · Đọc: 84
Upvote 0
vâng, em xin gửi 1 file làm ví dụ, giúp em với nhé vì món này em còn dốt lắm, cho em hỏi thêm luôn em còn rất nhiều tác nghiệp khác và nhiều từ cần phải dịch nữa sau này em vẫn có thể thêm tiếp vào file này được ko ah?
Hướng dẫn em cách thực hiện chi tiết với nhé vì em ko phải dân it pro cho lắm, đồng thời hướng dẫn em thêm nút button vào Excel luôn nhé(nhiều vấn đề em chưa biết hiii, nên em hỏi nhiều vậy). Em cám ơn rất nhiều!!!! Em gửi file đính kèm bên dưới nhé!
Làm cho bạn đây:
PHP:
Sub MF_Replace()
  Dim i As Long, Clls As Range, Ws As String, Sh As Worksheet
  Application.ScreenUpdating = False
  With Application.FileDialog(1)
    .AllowMultiSelect = True: .Show
    For i = 1 To .SelectedItems.Count
      Ws = Replace(.SelectedItems(i), .InitialFileName, "")
      If ThisWorkbook.Name <> Ws Then
        Workbooks.Open .SelectedItems(i)
        For Each Clls In ThisWorkbook.ActiveSheet.[A1].CurrentRegion.Resize(, 1)
          Windows(Ws).Activate
          For Each Sh In ActiveWorkbook.Worksheets
            Sh.UsedRange.Replace Clls, Clls.Offset(, 1), xlPart
          Next Sh
        Next Clls
        Windows(Ws).Close True
      End If
    Next i
  End With
  Application.ScreenUpdating = True
End Sub
Bạn mở file đính kèm rồi bấm nút Run code ---> một cửa sổ Open hiện ra, chọn file cần thay thế từ rồi bấm nút Open
Tôi mới thí nghiệm sơ qua thì thấy nó chưa dịch hết (vì danh mục của bạn còn thiếu nhiều từ)... Sau này bạn cứ bổ sung những từ còn thiếu vào 2 cột A, B như bạn đang làm là được rồi
 

File đính kèm

  • FileTN.rar
    15.4 KB · Đọc: 270
Upvote 0
vâng, em cám ơn ah!
Em chạy thử rồi ah, nhưng vẫn báo lỗi sau ah: " Cannot run the macro 'FileTN.xlsm!MF_replace'. The macro may not be available in thí workbook or all macro may be disabled" (em hiểu là ko thể mở được cái file này, vì các macro này ko có trong file hoặc là các macro này đã bị vô hiệu hóa), em cũng ko rõ thế nào , giúp em lần nữa đi ah!!!!!
 
Upvote 0
Làm cho bạn đây:
PHP:
Sub MF_Replace()
Dim i As Long, Clls As Range, Ws As String, Sh As Worksheet
Application.ScreenUpdating = False
With Application.FileDialog(1)
.AllowMultiSelect = True: .Show
For i = 1 To .SelectedItems.Count
Ws = Replace(.SelectedItems(i), .InitialFileName, "")
If ThisWorkbook.Name <> Ws Then
Workbooks.Open .SelectedItems(i)
For Each Clls In ThisWorkbook.ActiveSheet.[A1].CurrentRegion.Resize(, 1)
Windows(Ws).Activate
For Each Sh In ActiveWorkbook.Worksheets
Sh.UsedRange.Replace Clls, Clls.Offset(, 1), xlPart
Next Sh
Next Clls
Windows(Ws).Close True
End If
Next i
End With
Application.ScreenUpdating = True
End Sub
Bạn mở file đính kèm rồi bấm nút Run code ---> một cửa sổ Open hiện ra, chọn file cần thay thế từ rồi bấm nút Open
Tôi mới thí nghiệm sơ qua thì thấy nó chưa dịch hết (vì danh mục của bạn còn thiếu nhiều từ)... Sau này bạn cứ bổ sung những từ còn thiếu vào 2 cột A, B như bạn đang làm là được rồi

Bạn làm nhanh quá!
Mấy từ trong hình vẽ "dịch" được không bạn?

Bạn KieuAnh 86:
Phải thống nhất mã font trong từ điển và trong file tác vụ.
Ngoài ra ở góc trên bên phải có ba từ hình như là tiếng Ả Rập nhỉ?
Bổ sung: Mình chạy bình thường mà
 
Lần chỉnh sửa cuối:
Upvote 0
vâng, em cám ơn ah!
Em chạy thử rồi ah, nhưng vẫn báo lỗi sau ah: " Cannot run the macro 'FileTN.xlsm!MF_replace'. The macro may not be available in thí workbook or all macro may be disabled" (em hiểu là ko thể mở được cái file này, vì các macro này ko có trong file hoặc là các macro này đã bị vô hiệu hóa), em cũng ko rõ thế nào , giúp em lần nữa đi ah!!!!!
Phải Enable Macro lên thì mới chạy được chứ
Như vậy tôi đoán từ trước giờ hình như bạn chưa từng biết code VBA là gì cả, đúng không?
 
Upvote 0
vâng đúng rồi ah, em có làm cái nay bao giờ đâu ah, vì em ko phải dân IT mà, sếp em giao việc nên em mới tìm hiểu qua nên mới nhờ các anh IT pro giúp đỡ em đó.
Cái gì mới đầu tìm hiểu cũng gặp rất nhiều khó khăn mà, cám ơn các anh em đã giúp đỡ
 
Upvote 0
vâng đúng rồi ah, em có làm cái nay bao giờ đâu ah, vì em ko phải dân IT mà, sếp em giao việc nên em mới tìm hiểu qua nên mới nhờ các anh IT pro giúp đỡ em đó.
Cái gì mới đầu tìm hiểu cũng gặp rất nhiều khó khăn mà, cám ơn các anh em đã giúp đỡ
Trước tiên bạn hãy xem qua bài viết này để biết cách chạy macro trên Excel 2007:
http://www.giaiphapexcel.com/forum/showthread.php?30533-Medium-Security-Macro-Setting-trong-2007-n%E1%BA%B1m-%E1%BB%9F-%C4%91%C3%A2u&p=204224#post204224
Làm xong, đóng Excel rồi chạy lại file của tôi xem thử (nhớ chọn Enable this content nhé)
 
Upvote 0
Cái khó nhất là cơ sở dữ liệu (rất mệt), ngoài ghép từ để hiểu còn phải động từ, tính từ, rồi chủ động, bị động,... thì mới được câu hoàn chỉnh. Nói thế chắc kieuanh86, đừng tham vọng vì sẽ không thể làm được đâu!
 
Upvote 0
Cái khó nhất là cơ sở dữ liệu (rất mệt), ngoài ghép từ để hiểu còn phải động từ, tính từ, rồi chủ động, bị động,... thì mới được câu hoàn chỉnh. Nói thế chắc kieuanh86, đừng tham vọng vì sẽ không thể làm được đâu!
Ah, không đâu thầy à! Hoàn toàn làm được đấy! Chẳng qua tác giả không biết cách mô tả thôi ---> Bài toán này thực chất chỉ là TÌM KIẾM VÀ THAY THẾ (chẳng phải dịch ANH-VIỆT gì cả)
 
Upvote 0
Trước tiên bạn hãy xem qua bài viết này để biết cách chạy macro trên Excel 2007:
http://www.giaiphapexcel.com/forum/...ting-trong-2007-nằm-ở-đâu&p=204224#post204224
Làm xong, đóng Excel rồi chạy lại file của tôi xem thử (nhớ chọn Enable this content nhé)
Em cám ơn sự chỉ dẫn của pro nud96081631 rất nhiều ạ! Em đã làm theo đúng hướng dẫn như vậy nhưng vẫn không thấy xuất hiện hộp thoại Microsoft office security option để em có thể chọn Enable macro. Làm ơn chỉ giúp em đi ạ. Em cũng hỏi IT của cty em nhưng họ cũng ko biết. Hihi! Mong mọi người giúp đỡ. Cám ơn rất nhiều!!
 
Upvote 0
Em cám ơn sự chỉ dẫn của pro nud96081631 rất nhiều ạ! Em đã làm theo đúng hướng dẫn như vậy nhưng vẫn không thấy xuất hiện hộp thoại Microsoft office security option để em có thể chọn Enable macro. Làm ơn chỉ giúp em đi ạ. Em cũng hỏi IT của cty em nhưng họ cũng ko biết. Hihi! Mong mọi người giúp đỡ. Cám ơn rất nhiều!!
Hướng dẫn thì cũng đã hướng dẫn hết cả rồi, giờ bạn vẫn không làm được thì tôi đành... bó tay vậy
(sao người khác tải file về người ta chạy được? Mà nè, đừng hỏi IT mất công, IT chẳng biết Excel đâu)
 
Upvote 0
hihi! em biết là bác đã hướng dẫn em như vậy là đầy đủ rồi, em cũng làm như hướng dẫn một cách chính xác rồi đấy chứ ạ!
nó vẫn ko hiển thị được hộp thoại Security macro đấy thôi, nếu biết thì chỉ giùm em đi mà, làm ơn chỉ nốt em phần này. TKS!!!!!
 
Upvote 0
ai biết thì giúp em với nha! thứ 4 tới em phải có đáp án cho sếp, mà họ là sếp nước ngoài nên rất đúng hẹn nên em thấy lo lắng. Tks mọi người nhiều!
 
Upvote 0
Giải pháp tình thế: Bạn uninstall office07 triệt để (để loại bỏ lỗi nếu có) rồi cài office 2003 cho dễ sử dụng hơn (quen hơn)
 
Upvote 0
Hướng dẫn thì cũng đã hướng dẫn hết cả rồi, giờ bạn vẫn không làm được thì tôi đành... bó tay vậy
(sao người khác tải file về người ta chạy được? Mà nè, đừng hỏi IT mất công, IT chẳng biết Excel đâu)
hiii, em đã làm được rồi ạh, cám ơn pro nud96081631 rất nhiều. Em đã chạy thử rồi nhưng có cách nào giúp em dịch những cụm từ mà chúng được ngăn cách với nhau bằng dấu "," hay dấu " -" ko ah?
tks nhiều ah!!!!
 
Upvote 0
hiii, em đã làm được rồi ạh, cám ơn pro nud96081631 rất nhiều. Em đã chạy thử rồi nhưng có cách nào giúp em dịch những cụm từ mà chúng được ngăn cách với nhau bằng dấu "," hay dấu " -" ko ah?
tks nhiều ah!!!!
Cụ thể là CUM TỪ nào? Bạn nói rõ chút đi
Lưu ý rằng: Cái bảng tra của bạn thế nào thì nó sẽ thay thế như thế ấy thôi nha (bạn tạo bảng tra sai thì nó sẽ dịch sai)
 
Upvote 0
Web KT
Back
Top Bottom