アプリ版:「スタンプのみでお礼する」機能のリリースについて

VB(マクロ?)初心者です^^; ご教授お願いします
excelのマクロを使って ”決まった入力データ位置の文字”をコピー(又は切り取り)して同じseet内の違うセル貼り付けしたいのです。
ただし、同じセルに貼り付けては前の入力内容が消えてしまうので、2回目は前回の下のセル、3回目も....この同じ行為を続けたいのです。

                      みんなぁ~ help me 

A 回答 (4件)

こんにちは。



一例です。A1に入力されたデータをB列にコピー貼り付けします。
ただし、エラー処理はしていませんので、B列最後のセル(一番下)に貼り付けた後に実行するとエラーになります。

Dim myrng As Range

If Range("B1").Value = "" Then
Range("B1").Value = Range("A1").Value
Else
Set myrng = Range("B" & Rows.Count).End(xlUp)
myrng.Offset(1).Value = Range("A1").Value
End If
    • good
    • 0
この回答へのお礼

M-SOFTさん
ご回答ありがとうございました^^
内容理解しながらになってますので^^;(悪戦苦闘してます)
    とりあえずお礼まで           ども でした!! 
    

お礼日時:2009/04/04 17:24

'シートモジュールへ


Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address(0, 0) = "A1" Then Cells(65536, 2).End(xlUp).Offset(1, 0) = Target
End Sub

A1セルへ入力、B列最終行へコピー
    • good
    • 0
この回答へのお礼

ここ..こんなに早く回答していただけるなんて^^

早々の回答ありがとうございます、頑張ってとりくみま~す
   とりあえず お礼をしとかなきゃと思いまして

     ありがとうございました

お礼日時:2009/04/04 13:58

[回答番号:No.2] の DOUGLAS_ です。



 [回答番号:No.2] の応用ですが、「同じseet内の違うセル」を
>B1以下のB列のセル
ということではなくて、「B5:E10」というような矩形(ブロック単位)の範囲に左上からデータを詰めていくというようなことでしたら、

If Range("B5") = "" Then
 Range("B5").Value = Range("A1").Value
Else
 Range("B5:E10").Find("", SearchOrder:=xlByColumns).Value = Range("A1").Value
End If

というようなことでできます。

 この場合「E10」(最終セル)に既にデータが入っているとエラーになります。
    • good
    • 0

 「決まった入力データ位置」をA1、「同じseet内の違うセル」をB1以下のB列のセルとします。



 お手持ちのワークシートの構成が解りませんので、ホントのトコロ、最適なコードが解りませんが、一例ということで。。。

If Range("B1") = "" Then
 Range("B1").Value = Range("A1").Value
Else
 Columns(2).Find("").Value = Range("A1").Value
End If
    • good
    • 0
この回答へのお礼

DOUGLASさん どうもです^^
丁寧な(私が理解するのにちと時間がかかると思いますが^^;)御回答
ありがとうございます。 
                    がんばります!!

お礼日時:2009/04/04 17:07

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!