• ベストアンサー

最終列の列番号を列文字に変換することはできますか?

例えばaaaがある列を探し、その列番号は4で列文字がDですが、 列番号から列文字をvbaで取得する方法はありますか? Sub Sample() Dim i As Long Dim Colmoji As String i = Rows(1).Find(What:="aaa", LookAt:=xlWhole).Column Colmoji = i 'ここで列文字に変換したい MsgBox i & "の列文字は" & Colmoji & "です" End Sub このようなコードを作ってみたのですが列文字に変換する方法がわかりません。

質問者が選んだベストアンサー

  • ベストアンサー
  • DOUGLAS_
  • ベストアンサー率74% (397/534)
回答No.1

 お示しのコードをできるだけ残して書き換えました。 Sub Sample()   Dim i As Range   Dim Colmoji As String   Set i = Rows(1).Find(What:="aaa", LookAt:=xlWhole)   Colmoji = i.Address   MsgBox i & "の列文字は" & Split(Colmoji, "$")(1) & "です" End Sub

BSHBMTHVFSGQC
質問者

お礼

ご回答ありがとうございます。

その他の回答 (3)

回答No.4

Sub Sample() Dim mm As Long Dim nn As Long Dim xRange As Range Dim Colmoji As String For nn = 1 To ActiveSheet.UsedRange.Rows.Count Set xRange = Rows(nn).Find(What:="aaa", LookAt:=xlWhole) If Not (xRange Is Nothing) Then Colmoji = xRange.Address(True, False) Colmoji = Left(Colmoji, InStr(Colmoji, "$") - 1) Debug.Print "行:" & nn & "の列番号は" & Colmoji; "" End If Next End Sub

BSHBMTHVFSGQC
質問者

お礼

ご回答ありがとうございます。

  • tom04
  • ベストアンサー率49% (2537/5117)
回答No.3

こんばんは! せっかくコードをお考えのようですが・・・ Sub Sample1() Dim c As Range Set c = ActiveSheet.Rows(1).Find(What:="aaa", LookIn:=xlValues, LookAt:=xlWhole) MsgBox c.Address(False, False) End Sub といった感じではどうでしょうか?m(_ _)m

BSHBMTHVFSGQC
質問者

お礼

ご回答ありがとうございます。

  • DOUGLAS_
  • ベストアンサー率74% (397/534)
回答No.2

#1 DOUGLAS_ です。 #ちょっとミスがありました。 MsgBox i.Column & "の列文字は" & Split(Colmoji, "$")(1) & "です" ですね。

BSHBMTHVFSGQC
質問者

お礼

ご回答ありがとうございます。