ЯoomeR

プログラミング~実装とエラー解決と、時々、AI~

bingAI vs ChatGPT ~VBAのコード出力編~

応答速度

現時点ではbingAIは早期アクセスに限られているためか、応答速度は圧倒的にbingAIが早かった。 chat-gptは有料サービスが始まってから無料ユーザーは応答が遅くなった。 (その代わり、エラーで応答が停止されることもなくなった。)

コードの優位性

bingAIは列指定にマジックナンバーを使用していない点が勝っている。
コード内のコメントが必要最低限に抑えられている。

個人的には、bingAIの方が変数名やプロシージャー名がクールな気がする。

bingAIのコード

Sub ChangeRedCells()
    Dim LastRow As Long '最終行を格納する変数
    Dim TargetColumn As String '処理対象の列名(例:A列)
    Dim i As Long 'カウンター変数
    
    TargetColumn = "A" '処理対象の列名を指定
    
    '最終行を取得(End(xlUp)メソッド)
    LastRow = Cells(Rows.Count, TargetColumn).End(xlUp).Row
    
    '1行目から最終行まで繰り返す
    For i = 1 To LastRow
        'セルの色が赤色かどうか判定(ColorIndexプロパティ)
        If Cells(i, TargetColumn).Interior.ColorIndex = 3 Then
            'セルの値を55に変更(Valueプロパティ)
            Cells(i, TargetColumn).Value = 55
        End If
    Next i
    
End Sub

ChatGptのコード

Sub ChangeRedCellsTo55()

    Dim lastRow As Long
    Dim currentRow As Long
    
    'アクティブシートの最終行を取得する
    lastRow = ActiveSheet.Cells(Rows.Count, 1).End(xlUp).Row
    
    '特定の列の1行目から最終行まで、赤色のセルを55に変更する
    For currentRow = 1 To lastRow
        If ActiveSheet.Cells(currentRow, 1).Interior.Color = vbRed Then
            ActiveSheet.Cells(currentRow, 1).Value = 55
        End If
    Next currentRow

End Sub