dak ブログ

python、rubyなどのプログラミング、MySQL、サーバーの設定などの備忘録。レゴの写真も。

word2vec の Out-Of-Vocabulary 対策の一案

2020-09-13 00:29:26 | 自然言語処理
word2vec の Out-Of-Vocabulary 対策の一案」をQiitaに投稿しました。

VBA でカラムの幅を変更する方法

2020-09-10 22:50:39 | VBA

VBA でカラムの幅を変更する方法のメモ。

以下のような excel の表で対象カラムの幅を VBA で変更します。

ついでに、セル内で折り返します。

対象カラム
あいうえおかきくけこ
さしすせそたちつてと
Sub set_column_width_in_sheet()
    Dim str_col As String
    Dim r

    str_col = "A"
    r = 2
    While Cells(r, str_col).Value <> ""	' 折り返して表示
        Cells(r, str_col).WrapText = True
    Wend

    ' 列の幅を変更
    Columns(str_col + ":" + str_col).ColumnWidth = 80
End Sub

Sub set_column_width_in_all_sheets()
    Dim i As Integer
    For i = 1 To Sheets.Count
        Sheets(i).Activate
        Call set_column_width_in_sheet
    Next

    Sheets(1).Activate
End Sub

VBA で部分文字列の色を変更する方法

2020-09-10 22:25:58 | VBA

VBA で部分文字列の色を変更する方法のメモ。

以下のような excel の表で対象文字列カラムの部分文字列の色を VBA で変更します。

対象文字列 開始位置 文字列長  
あいうえお 3 2 「うえ」を赤に変更
かきくけこ 4 1 「け」を赤に変更
Sub set_substr_color_in_sheet()
    Dim str_col As String
    Dim num_col As String
    Dim from_idx As Integer
    Dim num_chars As Integer
    Dim color As Integer
    Dim r
    
    str_col = "A"	' 対象カラム
    from_col = "B"	' 対象文字列の開始位置
    num_col = "C"	' 対象文字列長
    color = RGB(255, 0, 0)	' 赤
    
    r = 2		' 行番号(2行目から)
    While Cells(r, str_col).Value <> ""
        from_idx = Cells(r, from_col).Value
        num_chars = Cells(r, num_col).Value
        Cells(r, str_col).Characters(Start:=from_idx, Length:=num_chars).Font.color = color
        r = r + 1
    Wend
End Sub

Sub set_substr_color_in_all_sheets()
    Dim i As Integer
    
    For i = 1 To Sheets.Count
        Sheets(i).Activate
        Call set_substr_color_in_sheet
    Next
    
    Sheets(1).Activate	' 終了時にシート1をアクティブにする
End Sub