- ベストアンサー
エクセル 関数
文字列で入力されている数字に1をたした数を 参照させたいのですがどうすればいいのでしょうか? A1のセルに1月と文字列で入っていた場合 次のA2のセルに2月と反映される式をA2に いれたいのですが・・。 関数でもVBAでもいいのですが方法はありますでしょうか? 数字だけだと反映されるのですが月が入ってしまうと どうもうまくいきません。
- みんなの回答 (5)
- 専門家の回答
質問者が選んだベストアンサー
> これをVBAで使用したいのですがどう表現すればいいのでしょうか? VBA?で、式を作成し、表示形式を自動的に決定するということ? Sub Macro() '書式設定 ActiveCell.NumberFormatLocal = "[DBNum3] m""月""" '上のセル参照する式を参照する式を作成します ActiveCell.FormulaR1C1 = "=DATE(YEAR(R[-1]C),MONTH(R[-1]C)+1,1)" End Sub こんな感じ? で、あくまで回答ではなく、参考意見ね
その他の回答 (4)
- Dxak
- ベストアンサー率34% (510/1465)
質問に対しての答えではないですが・・・。 A1セルを 2006/01/01 の日付にして、表示形式を [dbnum3]m"月" または m"月" にする。 A2セルで =DATE(YEAR(A1),MONTH(A1)+1,1) で、関数を使用し、表示形式をA1セルと同じものにする。 と言うのは、どうでしょう? 後で参照などを使用することがあれば、その方が応用が利きます。 とりあえず、回答ではないので参考で・・・。
補足
ありがとうございます。 実は一番やりたいこいことに近い回答なのですが とりあえず簡略化して初めに質問してみました。 これをVBAで使用したいのですがどう表現すればいいのでしょうか?
- stpira
- ベストアンサー率0% (0/1)
1月、2月・・・ の数字部分は全角でなくてはならないのでしょうか? 1月、2月・・・ のように数字部分が半角でよいのなら、[セルの書式 設定]→[表示形式]を「ユーザー定義」にして、「0"月"」等を指定す れば、ごく一般の計算式「=A1+1」でも大丈夫ですね。 但し、セルの実際の値は、文字列「2月」でなく数値「2」ということに なります。
- you192976
- ベストアンサー率26% (6/23)
A1セルの右下にマウスポインタを持っていくと黒く変化しますよね? そのままA2のセルまでドラッグすれば、勝手に2月と反映されますよ。
- FEX2053
- ベストアンサー率37% (7991/21371)
文字は「月」だけですよね?でしたら =LEFT(A1,LEN(A1)-1)+1 こいつで+1出来ますけど。
お礼
なるほど。 ありがとうございます。