Code vba chuyển số thành chữ trong excel

VBA Convert Number To String, chúng ta sử dụng hàm VBA chuyển đổi kiểu dữ liệu CStr. Số có thể là số nguyên hoặc bất kỳ giá trị số nào. Trong bài viết sau chúng ta hãy xem một ví dụ. Và cũng xem hướng dẫn từng bước để chạy mã VBA trong cửa sổ trình soạn thảo cơ bản trực quan [VBE]. Bạn có thể tìm thấy liên kết ở cuối phiên để biết thêm về chức năng CStr VBA

Mục lục

  • Khách quan
  • Chuyển đổi số thành chuỗi
  • Hướng Dẫn Chạy Code Macro VBA
  • Tài nguyên hữu ích khác

Chuyển đổi số thành chuỗi

Chúng ta hãy xem một ví dụ về mã macro VBA cách chuyển đổi số thành chuỗi

'VBA Convert Number to Function
Sub VBAF1_Convert_Number_to_Function[]

    'Variable Declaration
    Dim iNum As Integer, sResult As String
    
    'Assign value to variable
    iNum = 100
    
    'Check given input value is number or not
    If IsNumeric[iNum] Then
        sResult = CStr[iNum]
        MsgBox sResult, vbInformation, "VBAF1"
    Else
        MsgBox "Enter valid number.", vbInformation, "VBAF1"
    End If

End Sub

Giải trình. Trước tiên, chúng tôi đang kiểm tra giá trị đầu vào đã cho có phải là số hay không. Để kiểm tra, chúng tôi đang sử dụng chức năng VBA IsNumeric. Chức năng này là một chức năng thông tin VBA. Khi chúng tôi đã hoàn tất việc kiểm tra, nếu đó là giá trị số thì chuyển đổi số thành giá trị chuỗi. Chạy mã này trong chế độ gỡ lỗi. Dừng tại msgbox như trong ảnh chụp màn hình sau. Đặt con trỏ vào iNum và sau đó nhận thấy giá trị đầu vào đã cho đã được chuyển đổi thành chuỗi. Nó nằm trong dấu ngoặc kép

tùy chọn thứ 2, thay đổi cột thành văn bản *nên* hoạt động, nhưng Excel ngu ngốc CHƯA BAO GIỜ hỗ trợ điều này và tiếp tục không hỗ trợ nó. Ví dụ, đặt 1223123123 vào ô, định dạng dưới dạng văn bản và bạn sẽ thấy kết quả tương tự. 1. 22312E13 [Ok, tôi không đếm các chữ số, nhưng MỌI NGƯỜI YÊU THÍCH ký hiệu khoa học, đến mức KHÔNG có cách nào quái đản để chỉ chọn cột và nói 'hãy để nó yên cho Microsoft' - đã chiến đấu

Các tùy chọn khác của bạn, tạo một cột để chuyển đổi số 'SKU' dài 12 chữ số thành Văn bản có thể chỉ hoạt động, tôi sẽ phải thử điều đó. Trước đây, tôi đã phải thêm ' vào đầu mỗi dòng dang dở và khi có 12.000 dòng và tất cả những gì bạn muốn làm là bảo Excel để thứ dang dở MỘT MÌNH, đừng viết kịch bản ở đầu 0 và

Trả lời

Adam nói.
Ngày 10 tháng 9 năm 2018 lúc 7. 21 giờ tối

Rất vui vì tôi đã tìm thấy giải pháp Chuyển văn bản thành Cột này cho vấn đề này. Với tư cách là Đối tác của Microsoft, vui lòng cho Microsoft biết rằng phương pháp Chuyển văn bản thành cột là cách hoạt động của Định dạng tiêu chuẩn dưới dạng văn bản

Trong nhiều năm, tôi đã vật lộn với cách tốt nhất để đối phó với phương thức tích hợp bị hỏng. Tôi đã bắt đầu dạy cách sử dụng Excel hơn 25 năm trước và đã có một sự nghiệp lập trình và tôi không thể nhớ vấn đề này xuất hiện khi nào. Nó gây tai họa cho tất cả các lĩnh vực thao tác và truyền dữ liệu vào và cơ sở dữ liệu của chúng tôi nơi Excel được sử dụng làm trung gian--đột nhiên các số Nhận dạng bị hỏng dưới dạng các phiên bản Ký hiệu Khoa học của chuỗi số cơ bản. Tôi không biết tại sao bất cứ ai, ở bất cứ đâu, lại muốn các số được lưu trữ trong một cột cùng với văn bản chỉ được sử dụng làm định danh chứ không phải giá trị, đột nhiên chuyển sang Ký hiệu khoa học khi chuyển sang văn bản. nếu bất cứ điều gì, màn hình số phải là Ký hiệu khoa học nếu phù hợp và định dạng lại một cột thành Văn bản sẽ tự động chuyển đổi thành chuỗi số ban đầu

Ít nhất nên có một số cài đặt đơn giản mà các chuyên gia có thể thực hiện để thực hiện hành động kỳ lạ này đối với những người nghĩ rằng nó có giá trị và để 99 người kia. 99% thế giới có thể sử dụng Excel mà không vấp phải điều này

[{"Loại hình". "MASTER","Ngành kinh doanh". {"mã số". "LOB57","nhãn". "Power"},"Đơn vị kinh doanh". {"mã số". "BU058","nhãn". "Cơ sở hạ tầng IBM w\/TPS"},"Sản phẩm". {"mã số". "SWG60","nhãn". "IBM i"},"Nền tảng". [{"mã số". "PF012","nhãn". "IBM i"}],"Phiên bản". "6. 1. 0"}]

Tôi tìm thấy một mã chuyển đổi số thành từ. Nhưng làm cách nào tôi có thể chỉnh sửa mã này để giữ nguyên số "xu"?

thay vì định dạng này. 45. 50 - Bốn mươi lăm đô la và năm mươi xu nó sẽ như thế này. 45. 50 - Bốn mươi lăm đô la và 25/100

Định dạng đầu tiên là kết quả của mã này nhưng tôi muốn nó khác. Tôi muốn làm cho nó giống như ở định dạng thứ hai

Chúng tôi đã trình bày phần giới thiệu về các hàm chuỗi trong hướng dẫn Hàm chuỗi và chuỗi con VBA của chúng tôi. Trong hướng dẫn này, chúng ta sẽ xem xét cách chuyển đổi một số nguyên thành một chuỗi [bấm vào đây để tìm hiểu về cách chuyển đổi Chuỗi thành Số]. Lý do bạn muốn chuyển đổi một số hoặc ngày thành một chuỗi là để sử dụng các hàm thao tác chuỗi trên các giá trị này

Chức năng VBA CStr

Hàm VBA CStr cho phép bạn chuyển đổi kiểu dữ liệu số, ngày tháng hoặc boolean thành chuỗi

MsgBox CStr [88]

Cú pháp của Hàm CStr là

CStr[biểu thức] trong đó biểu thức là số hoặc ngày mà bạn muốn chuyển đổi

Đoạn mã sau cho bạn thấy cách số được xuất ra so với văn bản, kể cả bằng cách sử dụng Hàm CStr

Sub UsingTheConvertToStringFunction[]


Debug.Print CStr[8]
Debug.Print "Text"
Debug.Print 8
Debug.Print 2


End Sub

Điều này sử dụng Gỡ lỗi. In để xuất kết quả ra Cửa sổ ngay lập tức

Cả CStr[8] và từ Văn bản được hiển thị dưới dạng văn bản và được căn trái trong khi hai số được căn phải trong cửa sổ ngay lập tức

Chủ Đề