Excelの文字数カウントツール【便利?ツール】



The following two tabs change content below.
アバター

taka

あることがキッカケでVBAを独学で勉強しました、今ではブログを通してVBAでできることを解説しつつ、VBAや他の言語の勉強、ブログ運営の勉強をしています(^^♪

Excelの文字数カウントツール【便利?ツール】

どうも、taka(@takabou63)です(^^♪

今回は【便利?ツール】を作成しましたのでご紹介します ^^) _旦~~

その名も……Excelの文字数取得ツールです(^^♪

このツールはセルに入力されている文字列を読み取り、その文字数を返すというものになります( ^ω^ )

必要か?…との声が聞こえてきそうですが、それがこの【便利?ツール】シリーズになります(笑)

数千個のセルなら数秒で解析できますので処理速度としては問題ないかと思います(;^ω^)

文字列集計のコード

本当は汚いコードは見せたくはないのですが……一応こんな感じで作成しました(;^ω^)

何かの参考になればうれしいです (;´・ω・)

とりあえずファイルは下でダウンロードできるようにしてあります ^^) _旦~~

Dim Startfrg As Boolean  'スイッチのような役割
Dim Stopfrg As Boolean 'スイッチのような役割
Private Sub CommandButton1_Click()
Call sample  '↓のコードを呼び出す。
End Sub
Private Sub sample()
    Dim rag
    Dim i As Long
    Dim cnt As Long
    On Error GoTo Error1
  
    Startfrg = True 'startスイッチ
    Stopfrg = False 'stopスイッチ
    
    If Startfrg = True Then 'startスイッチがオンの時に実行した場合
     Stopfrg = True      'stopスイッチがオンになる
     Exit Sub
    End If
     

  ProgressBar1.Max = Range(RefEdit1.Value).Count  '指定した範囲のセルを取得しプログレスバーの最大値に設定
  i = 0
 For Each rag In Range(RefEdit1.Value)
  If Stopfrg = True Then 'stopがかかったら繰り返しを抜ける。
   Exit For
   Else
    DoEvents
    i = i + 1 'カウント
     cnt = cnt + Len(rag) '文字数のカウント
     Label1.Caption = "対象セル" & i & "/" & Range(RefEdit1.Value).Count & "処理完了"
     ProgressBar1.Value = i '処理完了数
      
    End If
    Next '範囲の数だけ繰り返す。
 
 MsgBox "選択範囲の文字数は" & cnt & "文字です"
    RefEdit1.Value = ""
    Startfrg = False
    Stopfrg = False
    ProgressBar1.Value = 0
   Exit Sub
 
Error1: 'エラーが起きた場合
    MsgBox "エラー番号:" & Err.Number & vbLf & _
    "エラー内容:" & Err.Description & vbLf
    Startfrg = False
    Stopfrg = False
    RefEdit1.Value = ""
    ProgressBar1.Value = 0
End Sub

 

ダウンロード

当サイトの免責事項をお読みになってからお使いください。

フォロー・チャンネル登録お願いします

VBA以外についてのブログはこちら↓

https://yb-log.com/

■Twitterフォロー

■YouTubeチャンネル登録

ファイルやコードの利用、WEBサイトの利用について

サンプルコードなどは当サイトの免責事項をよくお読みになってからお使いください。

Sponsored Link

 

WordPressでブログを始めるなら

WordPress簡単インストール&安心の安定性

レンタルサーバー Xserver

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です