下記のようにA列に1~3のコードがありB~E列には測定値があります。
B列以降の測定値のカウント(+3の個数、+2の個数…)を列ごとにVBAでカウントしてます。
A列に関係なくカウントするコードは記述して実行できましたが
A列の条件が1の時だけカウントするVBAが良くわかりません。
シート
A B C ・・・E
1 -1 +1 ・・・
1 +2 0
2 0 0
3 -3 0
1 -1 +3
101行目以降
+3 カウント数 …
+2 〃
+1 〃
0 〃
-1 〃
-2 〃
-3 〃
A列に関係なくカウントするコード
sub カウント()
Dim 行 As Long
Dim 列 As Long
For 列 = 2 To 5
For 行 = 101 To 107
Cells(行, 列).Value = Application.WorksheetFunction.CountIf(Range(Cells(2, 列), Cells(100, 列)), Cells(行, 1))
Next 行
Next 列
End Sub
マクロ初心者です。(エクセル2003使用)
Sheet2の管理番号をSheet1の管理番号と照合し、同じであれば、数量など3項目を上書きするマクロを作ろうとしています。
(Sheet1:日々更新される元データ)全データ数約500件くらい
A列 ,B, C, D, ・・・
1行 管理番号,品名,注文数量,出荷数量,・・・
(Sheet2:上書きさせたいシート)全データ数約80件くらい
G列 ,H, I J
9行 管理番号,品名,注文数量,出荷数量
↑シート2にある管理番号をもとに数量などを照合&上書きをしたいのです。
■シート1も2も行数は日々変動します。
■シート1で、まれに同じ管理番号が2つ存在することがありますが、取り出したい数量などのデータは、常に1番目に照合する管理番号です。
Sub シート間照合と上書き()
Dim i As Integer
a = Worksheets("sheet1").Range("a65536").End(xlUp).Row
For i = 2 To a
If Worksheets("sheet1").Range("A2") = Worksheets("sheet2").Range("G9") Then
Worksheets("sheet1").Cells(1, i) = Worksheets("sheet2").Range("G9")
Worksheets("sheet1").Cells(2, i) = Worksheets("sheet2").Range("H9")
Worksheets("sheet1").Cells(3, i) = Worksheets("sheet2").Range("I9")
While Cells(1, i) <> ""
i = i + 1
Wend
End If
Next
End Sub
■上記 模索しながらマクロを作ってみたのですが、エラーにはならないのですが(F8)、まったく動きませんでした。
すみませんが、お力をかしてください。
よろしくお願いいたします。
マクロ初心者です。(エクセル2003使用)
A列の管理番号が重複していたら、C列に☆をつけるようなマクロを作りたいのですが、うまくできません。
すみませんが、どなたか教えてください。
(Sheet1)
A B C
アカ154-7
アカ226-9 ☆
アカ446-0
アカ675-4 ☆
アカ669-8
アカ226-9 ☆
アカ118-5
アカ675-4 ☆
アカ226-9 ☆
(マクロ)
Sub 重複()
Dim 管理番号 As Variant
Dim motoSht As Worksheets
Dim セル範囲 As Range
With Sheets("Sheet1")
管理番号 = Sheet2.Range("A2").Value
Set セル範囲 = Range("A2:B65536").CurrentRegion.Find(管理番号, , LookAt:=xlWhole)
If 同じ管理番号があったら Then
Range("A").CurrentRegion.Offset(2) = ☆
ElseIf Not セル範囲 Is Nothing Then
MsgBox "管理番号は、重複していません"
End If
End With
End Sub
ご回答よろしくお願いいたします。
マクロ初心者です。(エクセル2003使用)
A列の管理番号が重複していたら、C列に☆をつけるようなマクロを作りたいのですが、うまくできません。
すみませんが、どなたか教えてください。
(Sheet1)
A B C
アカ154-7
アカ226-9 ☆
アカ446-0
アカ675-4 ☆
アカ669-8
アカ226-9 ☆
アカ118-5
アカ675-4 ☆
アカ226-9 ☆
(マクロ)
Sub 重複()
Dim 管理番号 As Variant
Dim motoSht As Worksheets
Dim セル範囲 As Range
With Sheets("Sheet1")
管理番号 = Sheet2.Range("A2").Value
Set セル範囲 = Range("A2:B65536").CurrentRegion.Find(管理番号, , LookAt:=xlWhole)
If 同じ管理番号があったら Then
Range("A").CurrentRegion.Offset(2) = ☆
ElseIf Not セル範囲 Is Nothing Then
MsgBox "管理番号は、重複していません"
End If
End With
End Sub
ご回答よろしくお願いいたします。