Office関連

文字列を指定した文字数で分割するVBA関数

“01234567890123456789012…”というような長い文字列を一定の文字数で区切る必要があったので、簡単に処理を考えてみました。

Option Explicit

Public Sub Sample()
  Dim v As Variant
  Dim s As String
  
  s = "01234567890123456789012"
  s = s & "34567890123456789012345"
  s = s & "67890123456789012345678"
  s = s & "90123456789012345678901"
  s = s & "23456789012345678901234"
  s = s & "56789012345678901234567"
  s = s & "89012345678901234567890"
  s = s & "12345678901234567890123"
  s = s & "45678901234567890123456"
  s = s & "7890123456789012345"
  
  v = SplitStr(s, 10)
  Debug.Print s
  Debug.Print "----------"
  Debug.Print Join(v, vbCrLf)
End Sub

Private Function SplitStr(ByVal TargetStr As String, ByVal StrLength As Long) As Variant
'文字列を指定した文字数で分割
  Dim v As Variant
  Dim n As Long
  Dim i As Long
  
  n = 0 '初期化
  ReDim v(0 To Round(Len(TargetStr) / StrLength - 0.5, 0)) '切り捨て
  For i = 1 To Len(TargetStr) Step StrLength
    v(n) = Mid(TargetStr, i, StrLength)
    n = n + 1
  Next
  SplitStr = v
End Function

上記SplitStr関数は、指定した文字数で文字列を分割して結果をVariant型の配列で返します。

以前のGoogle マップを使う。前のページ

PDFファイルに差し込み印刷するVBAマクロ次のページ

関連記事

  1. アイコン一覧

    Office 365アイコン(imageMso)一覧(B)

    Office 365のデスクトップ版Officeアプリケーション(Wo…

  2. アイコン一覧

    Office 2013 アイコン一覧(W)

    ・Office 2013 アイコン一覧 NUM…

  3. Office関連

    Gmail APIを使ってメール送信するVBAマクロ(2)

    前回の記事でGmail APIを使ってメールを送信するVBAマクロを紹…

  4. Office アドイン

    [Office用アプリ]Google ドライブでアプリを公開する方法

    今回は先日登壇した第一回 Apps for Office 勉強会の中で…

  5. Office関連

    Data Explorerのフォーラム&ブログ

    前回の記事で紹介した「Data Explorer」ですが、すでにフォー…

  6. Office関連

    Office 365 Soloをインストールしてみました。

    2014年10月17日、Microsoftの新しいOffice製品「O…

コメント

  1. この記事へのコメントはありません。

  1. この記事へのトラックバックはありません。

Time limit is exhausted. Please reload CAPTCHA.

※本ページはプロモーションが含まれています。

Translate

最近の記事

アーカイブ

PAGE TOP