Đổi số trong danh bạ mobile ( gần1000 số)

Thảo luận trong 'Kinh nghiệm sống' bởi hidenuser, 8/10/2008.

  1. hidenuser

    hidenuser Thành viên tập sự

    Tham gia:
    13/2/2008
    Bài viết:
    3
    Đã được thích:
    7
    Điểm thành tích:
    3
    Dạo này đang gặp problem với vấn đề đổi số điện thoại của khách hàng, search trên mạng thấy bài viết này khá hay nên post lại để các bố mẹ có thêm thông tin:

    Kể từ ngày 5-10 hơn 10 triệu số điện thoại cố định đã thay đổi (thêm số 3 vào đầu), và từ ngày 19-10 sẽ không còn hệ thống số điện thoại cũ nữa.

    Đối với những người có danh bạ Address book lớn cỡ vài trăm đến vài ngàn trong điện thoại di động và trên máy tính để thay đổi bằng tay từng số 1 thì quả là cực hình.

    Sau đây là đoạn mã trong outlook (2003,2007) có thể giúp chúng ta thay đổi hàng loạt.
    Một số lưu ý:
    - Trước khi thực hiện nên đồng bộ điện thoại di động với outlook (sync).
    - Trước khi chạy đoạn mã này nên backup toàn bộ dữ liệu bằng cách copy thư mục dữ liệu pst của outlook ra chỗ khác, hoặc export ra excel hoặc access (hạn chế dùng excel vì 1 số trường hợp excel sẽ tự động làm biến đổi số điện thoại nhất là các dạng: 04-754321: excel sẽ làm pháp tính trừ, thế là hỏng hết.

    Cách làm:
    - Mở outlook, nhấn phím Alt-F11
    - Copy paste đoạn mã dưới đây
    - Thay mã vùng tương ứng (ví dụ "04" ->"043"...)
    - Click chuột vào phần body của PhoneNumberAddressBookFindReplace()
    - Nhấn phím F8
    - Nhấn phím F5
    - Xong
    code

    Nguồn: http://www.tuvantieudung.org/forum/showthread.php?t=8688
     

    Xem thêm các chủ đề tạo bởi hidenuser
    Đang tải...


  2. webmaster

    webmaster Stay hungry. Stay foolish

    Tham gia:
    16/12/2006
    Bài viết:
    13,278
    Đã được thích:
    35,257
    Điểm thành tích:
    6,063
    Hay quá. Cám ơn bạn rất nhiều.

    Mình xin copy đoạn code đó ra đây luôn để tiện cho mọi người

    Code:
    Public Sub PhoneNumberAddressBookFindReplace()
    ' PhoneNumberAddressBookFindReplace() Released under GPL, version 1.0
    ' Thay doi ma so dien thoai
    ' them so 3 vao dau
    ' vi du them dau so 3 cho cac so co dinh o Hanoi:
    '     ReFileContacts "04", "043"
    '
    '' vi du them dau so 3 cho cac so co dinh o tp HCM:
    '     ReFileContacts "08", "083"
    '
        ReFileContacts "04", "043"
    End Sub
    
    Public Sub ReFileContacts(findText As String, replaceText As String)
        Dim items As items, item As ContactItem, folder As folder
        Dim contactItems As Outlook.items
        Dim itemContact As Outlook.ContactItem
        Dim count As Integer
    
        Set folder = Session.GetDefaultFolder(olFolderContacts)
        Set items = folder.items
        count = items.count
        If count = 0 Then
            MsgBox "Khong co dia chi nao!"
            Exit Sub
        End If
    
        Set contactItems = items.Restrict("[MessageClass]='IPM.Contact'")
      
        Dim n As Integer
        n = 0
        For Each itemContact In contactItems
                 
            If InStrB(1, itemContact.BusinessTelephoneNumber, findText, vbBinaryCompare) = 1 Then
                itemContact.BusinessTelephoneNumber = VBA.Replace(itemContact.BusinessTelephoneNumber, findText, replaceText, 1, 1, vbBinaryCompare)
            End If
            
            If InStrB(1, itemContact.AssistantTelephoneNumber, findText, vbBinaryCompare) = 1 Then
                itemContact.AssistantTelephoneNumber = VBA.Replace(itemContact.AssistantTelephoneNumber, findText, replaceText, 1, 1, vbBinaryCompare)
            End If
            
            If InStrB(1, itemContact.Business2TelephoneNumber, findText, vbBinaryCompare) = 1 Then
                itemContact.Business2TelephoneNumber = VBA.Replace(itemContact.Business2TelephoneNumber, findText, replaceText, 1, 1, vbBinaryCompare)
            End If
            
            If InStrB(1, itemContact.BusinessFaxNumber, findText, vbBinaryCompare) = 1 Then
                itemContact.BusinessFaxNumber = VBA.Replace(itemContact.BusinessFaxNumber, findText, replaceText, 1, 1, vbBinaryCompare)
            End If
            
            If InStrB(1, itemContact.CallbackTelephoneNumber, findText, vbBinaryCompare) = 1 Then
                itemContact.CallbackTelephoneNumber = VBA.Replace(itemContact.CallbackTelephoneNumber, findText, replaceText, 1, 1, vbBinaryCompare)
            End If
            
            If InStrB(1, itemContact.CarTelephoneNumber, findText, vbBinaryCompare) = 1 Then
                itemContact.CarTelephoneNumber = VBA.Replace(itemContact.CarTelephoneNumber, findText, replaceText, 1, 1, vbBinaryCompare)
            End If
            
            If InStrB(1, itemContact.CompanyMainTelephoneNumber, findText, vbBinaryCompare) = 1 Then
                itemContact.CompanyMainTelephoneNumber = VBA.Replace(itemContact.CompanyMainTelephoneNumber  , findText, replaceText, 1, 1, vbBinaryCompare)
            End If
            
            If InStrB(1, itemContact.Home2TelephoneNumber, findText, vbBinaryCompare) = 1 Then
                itemContact.Home2TelephoneNumber = VBA.Replace(itemContact.Home2TelephoneNumber, findText, replaceText, 1, 1, vbBinaryCompare)
            End If
            
            If InStrB(1, itemContact.HomeFaxNumber, findText, vbBinaryCompare) = 1 Then
                itemContact.HomeFaxNumber = VBA.Replace(itemContact.HomeFaxNumber, findText, replaceText, 1, 1, vbBinaryCompare)
            End If
            
            If InStrB(1, itemContact.HomeTelephoneNumber, findText, vbBinaryCompare) = 1 Then
                itemContact.HomeTelephoneNumber = VBA.Replace(itemContact.HomeTelephoneNumber, findText, replaceText, 1, 1, vbBinaryCompare)
            End If
            
            If InStrB(1, itemContact.MobileTelephoneNumber, findText, vbBinaryCompare) = 1 Then
                itemContact.MobileTelephoneNumber = VBA.Replace(itemContact.MobileTelephoneNumber, findText, replaceText, 1, 1, vbBinaryCompare)
            End If
            
            If InStrB(1, itemContact.OtherFaxNumber, findText, vbBinaryCompare) = 1 Then
                itemContact.OtherFaxNumber = VBA.Replace(itemContact.OtherFaxNumber, findText, replaceText, 1, 1, vbBinaryCompare)
            End If
            
            If InStrB(1, itemContact.OtherTelephoneNumber, findText, vbBinaryCompare) = 1 Then
                itemContact.OtherTelephoneNumber = VBA.Replace(itemContact.OtherTelephoneNumber, findText, replaceText, 1, 1, vbBinaryCompare)
            End If
            
            If InStrB(1, itemContact.PrimaryTelephoneNumber, findText, vbBinaryCompare) = 1 Then
                itemContact.PrimaryTelephoneNumber = VBA.Replace(itemContact.PrimaryTelephoneNumber, findText, replaceText, 1, 1, vbBinaryCompare)
            End If
            
            If InStrB(1, itemContact.RadioTelephoneNumber, findText, vbBinaryCompare) = 1 Then
                itemContact.RadioTelephoneNumber = VBA.Replace(itemContact.RadioTelephoneNumber, findText, replaceText, 1, 1, vbBinaryCompare)
            End If
           itemContact.Save
        Next
    
        MsgBox "Da xong!"
    End Sub
    
     
    architect thích bài này.
  3. KO2 THẢO

    KO2 THẢO Thành viên tích cực

    Tham gia:
    1/5/2008
    Bài viết:
    613
    Đã được thích:
    128
    Điểm thành tích:
    83
    thế mà em cứ lo phải làm thủ công đến bao giờ cho xong cảm ơn bác nhiều ạ.
     
  4. Ngoc Lan

    Ngoc Lan Thành viên tích cực

    Tham gia:
    29/9/2004
    Bài viết:
    669
    Đã được thích:
    179
    Điểm thành tích:
    83
    Cả nhà cứ bình tĩnh đừng sửa vội. Có thông tin mới đây:

    Đổi số điện thoại cố định đợt 2 sẽ phức tạp hơn

    Mặc dù số lượng thuê bao đổi số không lớn bằng đợt 1, nhưng do có nhiều nhà cung cấp khác nhau, nên dự kiến lần đổi số vào ngày 26/10 tới sẽ phức tạp hơn, không tránh khỏi những phiền hà nhất định cho khách hàng.

    Sau lần đổi số đợt một vào ngày 5/10 vừa qua, khoảng 10 triệu thuê bao điện thoại cố định VNPT đã được thêm số 3 vào trước số thuê bao trước đây và kéo dài song song 2 hình thức quay số cũ và mới trong vòng 2 tuần.

    Trong đợt đổi số lần thứ 2 này, theo quyết định phân bổ đầu số mới, Viettel sẽ thêm chữ số 6 vào trước các số thuê bao hiện hành, EVN Telecom thêm số 2, SPT thêm số 5, FPT Telecom thêm số 7, VTC thêm số 4.

    Từ thời điểm 0h ngày 26/10/2008, Viettel sẽ tiến hành mở rộng độ dài số thuê bao cố định, bao gồm cả cố định vô tuyến HomePhone và cố định hữu tuyến thông thường trên phạm vi toàn quốc.

    Cụ thể, theo phương án của Viettel, nhà cung cấp dịch vụ cố định lớn nhất trong đợt đổi số ngày 26/10 tới với hơn 1 triệu thuê bao cố định:

    - Các thuê bao tại Hà Nội cũ và Hà Tây cũ sẽ chuyển từ 7 chữ số lên 8 chữ số bằng cách chèn thêm số 6 vào trước các số thuê bao hiện hành. Mã vùng của các thuê bao trong vùng Hà Nội mới sẽ được thống nhất là 04 theo quyết định của Bộ Thông tin & Truyền thông.

    - Các thuê bao hiện hành của huyện Mê Linh chèn thêm số 60 vào trước số thuê bao cũ.

    - 4 xã thuộc huyện Lương Sơn chuyển về Hà Nội mới sẽ chèn thêm số 61 vào trước các thuê bao hiện hành.

    - Đối với 8 tỉnh, thành phố đã mở rộng độ dài số là Hải Phòng, Hải Dương, Nam Định, Thanh Hoá, Nghệ An, Đà Nẵng, Đồng Nai, Kiên Giang sẽ đổi chữ số “3” trước các thuê bao hiện hành thành chữ số “6”.

    - Đối với 54 tỉnh, thành phố còn lại sẽ được chèn thêm số 6 vào trước số thuê bao hiện hành.

    Tuy nhiên, đợt đổi số lần 2 sẽ không áp dụng được hình thức gọi song song 2 số cũ và mới trong 2 tuần như lần đổi số đầu tiên của VNPT, và từ 0h ngày 26/10/2008, việc quay số của các thuê bao Viettel sẽ được thống nhất theo một cách gọi duy nhất như trên.

    Trong đợt đổi số lần thứ 2 này, các mạng viễn thông đều mở rộng độ dài số thuê bao bằng cách chèn thêm các số khác nhau vào trước số thuê bao cũ nên rất dễ gây nhầm lẫn cho khách hàng. Do vậy trước khi gọi, khách hàng phải biết được số cần gọi là thuộc mạng viễn thông nào để bấm thêm đầu số mới tương ứng.

    Từ nay đến trước thời điểm 0h ngày 26/10/2008 tới, VietNamNet sẽ tiếp tục thông tin về phương án đổi số thuê bao của các nhà cung cấp viễn thông còn lại. Mời quý độc giả chú ý theo dõi.

    B.M
    VIETNAMNET
     
    architect thích bài này.
  5. Ngoc Lan

    Ngoc Lan Thành viên tích cực

    Tham gia:
    29/9/2004
    Bài viết:
    669
    Đã được thích:
    179
    Điểm thành tích:
    83
    architect thích bài này.
  6. webmaster

    webmaster Stay hungry. Stay foolish

    Tham gia:
    16/12/2006
    Bài viết:
    13,278
    Đã được thích:
    35,257
    Điểm thành tích:
    6,063
    Với việc đổi số như thế này thì quá phức tạp. Cũng khó có thể phân biệt là số nào thuộc nhà cung cấp dịch vụ nào.
     
    architect thích bài này.

Chia sẻ trang này