忍者ブログ
日常だったりネタだったり作品の進捗だったり……色々書きます。不定期に。
06
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 管理画面

    VBA小ネタ-ファンクション「列名変換」

    こんばんは若槻です。何だか今週は走るように日にちが
    過ぎたような気がします。年取ったせいですかねぇw


    まあそれはさておき本日は久しぶりにVBAでも。
    ただし前の続きではなくてちょっと横道にそれます。

    今回は「列番号から列名に変換する」です。

    今まで晒してきたVBAでも使ってましたが、そちらは
    人様のソースを使ってたに過ぎなかったのでちょいと
    自作してみました。

    こちら↓

    ◎ソース
    '==============================================
    ' 列番号を列名に変換
    '==============================================
    Function RetuHenkan(ByVal k As Integer) As String
      Dim RetuMei As Variant  'A~Zを格納
      Dim RetuA   As Integer  '参照するkの値が27以上の時の1桁目の文字を判断
      Dim RetuB   As Integer  '参照するkの値が27以上の時の2桁目の文字を判断
      RetuMei = Array("A", "B", "C", "D", "E", "F", "G", "H", "I", "J", "K", "L", "M", "N", _
                      "O", "P", "Q", "R", "S", "T", "U", "V", "W", "X", "Y", "Z")
      If k > 26 Then
        RetuA = Int(k / 26)
        RetuB = k Mod 26
        If RetuB = 0 Then
          RetuA = RetuA - 1
          RetuB = 26
        End If
        RetuHenkan = RetuMei(RetuA - 1) & RetuMei(RetuB - 1)
      Else
        RetuHenkan = RetuMei(k - 1)
      End If
    End Function

    ◎説明
    1.基本
    1)受け渡し用に変数kを定義。これは何でもよし(必ず数字型)
    2)ファンクション自体は"列名"が欲しいので文字型に
    3)Variant型で定義した変数にArrayでA~Zを格納

    2.本筋
    1)kの値が27以上(=AA列以上)の時
    ・RetuAにkを26で割った値を格納。1~25の時は0、26~51の時は1、など
    ・RetuBにkを26で割ったあまりを格納。0=Z、1=A、2=B……と対応
    ?もしもRetuBが0だったら?
    →割り切れる数=Z分類なので、RetuAの値はひとつ減らし、
    RetuBには26を入れる
    =RetuHenkan(ファンクション名)にRetuAの値、RetuBの値に相当する
    文字を格納する
    2)kの値がそれ以外の時(A列~Z列)
    ・RetuHenkanにRetumeiから相当する文字を格納する


    これだけです。
    一応動作確認はしていますが私のところで大丈夫でも他の方のところで
    上手くいく保証はないのでお気をつけください。

    ちなみに使い方は標準モジュールにこれを置いて必要な時に呼び出すだけ。
    「列番号が移動してて今どこにいるのか分からない」
    「列名が必要なのに列番号しか分からない」
    という時に使えると思います。

     

    以下サイトメール返信です。
    無名拍手の皆さんもありがとうございます^^

     

    拍手[1回]

    PR

    「僕らの世界」更新完了~

    こんばんは若槻です。手足の指に水ぶくれのようなものが
    出来たのですが皮膚科に行っても原因が分からないという状況に
    びくびくしてます。何だ最近の私の身体的ダメージの数々はΣ;!?


    それはさておきようやくようやく「僕らの世界」の続きを更新
    出来ました。とりあえず自分で言った「6月中に」は守れて
    よかったです^^;


    というわけで、こちらつ■
    ……ハイパーリンクを行おうとするとエラーが起こるだとΣ;!?
    くっ、仕方ないここはURLだけ置いておこう!

    http://ncode.syosetu.com/n8457j/

    ……これでもいけるやん(゜д゜)


    えーと、まあとにかく「はじまりは選択から」が終わりましたので、
    読んでくださっていた方(読んだことの無い方はぜひ最初から!)、
    大変お待たせしました。どうぞご覧ください^^

    ちなみに今回の話でトーキの戦闘スタイルが決まりました☆

    拍手[1回]

    またかあああ!!

    こんばんは若槻です。最近創作の報告が全く出来てなくて
    やんわりストレスが……。はっ、実はこれのせいか最近の
    体調不良Σ←現実をミロ

    まあアホな推測はおいておきまして、また来ましたよ
    口唇ヘルペスorz
    今回も朝はなくて昼頃に浮き上がってきて夜には
    残念な状態に早変わりしました。
    家族の中じゃ「風邪引いたからね~」と笑い話です。
    別にいいけどね!

    とりあえず鼻にシフトした風邪菌とヘルペスは早いとこ
    ばいばいしたい若槻でしたノシ



    ……それにしても「僕らの世界」終わるのかなこれ……。
    いや、頑張りますけどね!
    でも明日だよ脳内締切日……orz

    拍手[0回]

    あいるびーばーっく

    こんばんは若槻です。タイトルが未来形じゃないのかこれとも
    思いましたが気にしない←

    というわけで37.5→36.8→35.7の道程を数時間~一晩で越えて
    復活しました若槻です。現在は0.1上がってますが気にしない((
    まだ喉は痛いし鼻水は止まらないし平熱よりも高いですがとりあえず復活!
    我ながら何だこの脅威の回復力はw

    まあ今日も無理せずに早めに寝ようと思います。
    会社にいる時は全然大丈夫だった私を誰か褒めてくだs(ry


    以下拍手返信です。
    無名拍手の方もご心配ありがとうございます^^

    拍手[0回]

    風邪ひいた……orz

    こんばんは若槻です。連日の温度変化に見事に
    やられました。


    自分の体温が37度超えたの久々に見ました。

    今日はおとなしく寝てようと思います……。
    食欲はあるしすぐに治るでしょう(-ω-)

    皆さんも体調には十分お気を付けくださいませノシ

    拍手[2回]


    [165]  [166]  [167]  [168]  [169]  [170]  [171]  [172]  [173]  [174]  [175
    カレンダー
    05 2026/06 07
    S M T W T F S
    1 2 3 4 5 6
    7 8 9 10 11 12 13
    14 15 16 17 18 19 20
    21 22 23 24 25 26 27
    28 29 30
    ブログ内検索
    最新コメント
    [05/27 きり]
    [01/13 きり]
    [06/06 わんこ]
    [03/30 サイトウ]
    [06/09 yu]
    カウンター
    アクセス解析


    フリーエリア
    コガネモチ


        ◆ graphics by アンの小箱 ◆ designed by Anne ◆

        忍者ブログ [PR]