Cum se convertește textul în număr cu Excel VBA (3 exemple cu macro-uri)

  • Imparte Asta
Hugh West

În Microsoft Excel, lucrul cu numere este cel mai frecvent. Uneori, trebuie să procesăm un set de date cu cantități mari de numere. Dar, este posibil să vă aflați într-o situație în care numerele dvs. arată ca un text. Din acest motiv, nu puteți adăuga, scădea, împărți, înmulți sau efectua orice fel de operație. Întotdeauna se afișează o eroare atunci când încercați să faceți acest lucru. În acest tutorial, vă vom învăța cum să convertițitransformare din text în număr în Excel utilizând VBA coduri cu exemple adecvate și ilustrații corespunzătoare.

Descărcați caietul de practică

Descărcați acest caiet de practică

Conversia textului în numere utilizând VBA.xlsm

Cum să identificați numerele formatate ca text

Microsoft Excel este suficient de inteligent pentru a înțelege diferența dintre Text și Număr. Acesta le convertește automat în formatele respective. Dar, uneori, nu poate face acest lucru din cauza unor utilizări și interpretări greșite ale setului de date. Din acest motiv, păstrează numerele ca texte în registrul de lucru.

Uitați-vă la acest set de date. Aici avem câteva numere într-o coloană.

Deși avem numere în coloană, toate sunt aliniate la stânga ca și textul. Acum, faceți clic pe orice celulă. Veți găsi această casetă lângă celulă.

Acum, treceți cursorul mouse-ului peste casetă. După aceea, veți vedea acest mesaj.

Aceasta arată că celula este formatată ca text. În acest fel, puteți fi siguri că celulele sunt formatate ca text sau nu.

3 Coduri VBA pentru a converti textul în număr în Excel

Deși puteți converti cu ușurință textul în numere manual, acest tutorial se referă la conversia textului în numere folosind codurile VBA. Vă recomandăm să învățați și să aplicați toate aceste metode la setul dvs. de date. Cu siguranță, vă va fi util într-o mulțime de situații.

1. Cod VBA cu metoda Range.NumberFormat pentru a converti textul în număr în Excel

Această metodă este destul de simplă și ușor de utilizat pentru orice set de date. Tot ce trebuie să faceți este să selectați intervalul de celule și să îl introduceți în fereastra Cod VBA .

📌 Pași

1. În primul rând, apăsați ALT+F11 de pe tastatură pentru a deschide fereastra Editor VBA .

2. Faceți clic pe Inserare> Modul .

3. Apoi, introduceți următorul cod:

 Sub ConvertTextToNumber() With Range("B5:B14") .NumberFormat = "General" .Value = .Value End With End With End Sub 

4. Salvați fișierul.

5. Apoi, apăsați ALT+F8 Se va deschide fereastra Macro caseta de dialog.

6. Selectați ConvertTextToNumber și faceți clic pe Fugi.

În cele din urmă, acest cod va converti textul nostru în numere.

Citește mai mult: Cum se convertește șirul în număr în Excel VBA

2. Cod VBA cu buclă și CSng pentru a converti textul în număr

În această metodă, folosim Bucla și CSng funcții. CSng ia practic orice text ca argument și îl convertește într-un singur număr. Bucla noastră va trece prin fiecare celulă a coloanei selectate. După aceea, vom trece valoarea fiecărei celule la funcția CSng pentru a-l converti din text în număr.

📌 Pași

1. În primul rând, apăsați ALT+F11 de pe tastatură pentru a deschide fereastra Editor VBA .

2. Faceți clic pe Inserare> Modul .

3. Apoi, introduceți următorul cod:

 Sub ConvertUsingLoop() For Each r In Sheets("Loop&CSng").UsedRange.SpecialCells(xlCellTypeConstants) If IsNumeric(r) Then r.Value = CSng(r.Value) r.NumberFormat = "General" End If Next End Sub 

4. Salvați fișierul.

5. Apoi, apăsați ALT+F8 Se va deschide fereastra Macro caseta de dialog.

6. Selectați ConvertUsingLoop și faceți clic pe Fugi.

După cum puteți vedea, am convertit textul nostru în numere folosind acest cod VBA.

Lecturi similare

  • Conversia în masă a textului în numere în Excel (6 moduri)
  • Cum se convertește șirul de caractere în lung utilizând VBA în Excel (3 moduri)
  • Conversia șir de caractere în dublu în Excel VBA (5 metode)
  • Cum să remediați eroarea de conversie în numere în Excel (6 metode)

3. Conversia textului în numere pentru intervale dinamice în Excel

Acum, metodele anterioare au fost pentru intervale selectate. Asta înseamnă că trebuie să introduceți manual intervalul de celule în cod. Dar, uneori, setul de date poate fi mare. În aceste cazuri, trebuie să vă amintiți intervalul de celule. Această metodă va depăși această problemă. Știm că setul nostru de date începe de la Celula B5 Dar nu știm unde s-ar putea termina.

Astfel, identificăm în mod dinamic ultimul rând Excel utilizat care conține date, utilizând Cells(Rows.Count, "B").End(xlUp).Row Acesta returnează ultimul număr de rând nevid pe care îl concatenăm cu " B5:B ".

📌 Pași

1. În primul rând, apăsați ALT+F11 de pe tastatură pentru a deschide fereastra Editor VBA .

2. Faceți clic pe Introduceți > Modul .

3. Apoi, introduceți următorul cod:

 Sub ConvertDynamicRanges() With Range("B5:B" & Cells(Rows.Count, "B").End(xlUp).Row) .NumberFormat = "General" .Value = .Value End With End With End Sub 

4. Salvați fișierul.

5. Apoi, apăsați ALT+F8 Se va deschide fereastra Macro caseta de dialog.

6. Apoi selectați ConvertDynamicRanges și faceți clic pe Fugi.

După cum puteți vedea, am reușit să convertim cu succes textul în numere folosind codurile VBA.

💬 Lucruri de reținut

✎ Aici, folosim coloana B pentru setul nostru de date. Dacă datele dvs. se află într-o altă coloană, modificați corespunzător intervalul de celule din codurile VBA.

✎ Codurile VBA vor funcționa numai pe foaia activă.

Concluzie

În concluzie, sper că acest tutorial v-a oferit o parte din cunoștințele utile despre convertirea textului în număr în Excel folosind codurile VBA. Vă recomandăm să învățați și să aplicați toate aceste instrucțiuni la setul dvs. de date. Descărcați caietul de lucru de practică și încercați-le singur. De asemenea, nu ezitați să oferiți feedback în secțiunea de comentarii. Feedback-ul dvs. valoros ne menține motivați să creăm tutoriale ca acesta.Nu uitați să verificați site-ul nostru Exceldemy.com pentru diverse probleme și soluții legate de Excel.

Hugh West este un trainer și analist Excel cu o experiență de peste 10 ani în industrie. Deține o diplomă de licență în contabilitate și finanțe și un master în administrarea afacerilor. Hugh are o pasiune pentru predare și a dezvoltat o abordare unică de predare care este ușor de urmărit și de înțeles. Cunoștințele sale experte despre Excel au ajutat mii de studenți și profesioniști din întreaga lume să-și îmbunătățească abilitățile și să exceleze în cariera lor. Prin blogul său, Hugh își împărtășește cunoștințele lumii, oferind tutoriale gratuite Excel și instruire online pentru a ajuta persoanele și companiile să-și atingă întregul potențial.