[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]
『A1 B1 C1と入力するたびに1セルずれるように』(miyuki)
いつも、為になり助かってます。
[[20020530145644]]で電卓みたいな計算を紹介していたのですが、outpをシート2のA1、B1、C1と入力するたびに1セルずれることは不可能でしょうか?宜しくお願いします。(miyuki)
ちょっと想像し難いのですが、1セルずれるとはどういうことですか?
シート2のA1に入力したら答えはどこに出すの?
シート2のB1に入力したら答えはどこに出すの?
シート2のC1に入力したら答えはどこに出すの?
行は1しか使わないのかな?
(ramrun)
訊き方悪くごめんなさい。入力はシート1のA1のみとして入力するたびにシート2のA1.B1.C1.D1.E1というふうにずらしたいのですが・・・お願いします。
電卓みたいな計算をするわけではないってことですね?
シート1のA1で入力するとシート2のA1,B1,C1,... とズレます。
シート1のA1でdeleteすると、逆に消しながら戻ってきます。
シート1のB1で、シート2のセルの位置を管理してます。
そこではまずいようでしたら、 outp = "$B$1" を変更してください。
sno = 2 を変えれば、出力シートを変更できます。
(ramrun)
Private Sub Worksheet_Change(ByVal Target As Range)
Application.EnableEvents = False
Dim inp, outp As String
Dim sno, posi As Integer
inp = "$A$1"
outp = "$B$1"
sno = 2
posi = Range(outp).Value
If posi < 1 Then posi = 1
If Target.Address = inp Then
Worksheets(sno).Cells(1, posi).Value = Target.Value
If Target.Value <> "" Then
Range(outp).Value = posi + 1
Range(inp).Select
ElseIf posi > 1 Then
Range(outp).Value = posi - 1
Worksheets(sno).Cells(1, posi - 1).Value = Empty
End If
End If
Application.EnableEvents = True
End Sub
ほんとに助かりました。次回は自分でもVBAの本を買って、ramrun先生の作成していただいたマクロが読めるよう頑張ります。ありがとうございました。
[ 一覧(最新更新順) ]
YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki.
Modified by kazu.