給与計算結果の一覧表から給与明細に転記するマクロを作っていますが、最後の行まで繰り返しする方法がわかりません。
例えば
A列 B列
氏名 給与額
と入っていて、B列に給与額が入っている人のみ明細を作りたい場合で、
フォーマットのC列に氏名、D列に給与額を入れたいとします。
以下のように組んでみました。
Sub kyuyo()
'■その月の給与一覧表をセット
Dim W_s As Worksheet
Set W_s = ActiveSheet
'■データ転記
ActiveSheet.Range("C1").Value = W_s.Range("A2").Value '氏名
ActiveSheet.Range("D1").Value = W_s.Range("B2").Value '給与額
これを、B列に給与額が入っている人たちの分繰り返ししたいのですが、どうしたら良いでしょうか?
A 回答 (2件)
- 最新から表示
- 回答順に表示
No.2
- 回答日時:
こんにちは
たまたま、質問者様の別の質問に回答したサンプルが、繰り返し法のひとつの例にもなっています。(最終行をチェックする対象の列は異なりますが…)
https://oshiete.goo.ne.jp/qa/11228824.html
他にもいろいろな方法が考えられるとは思いますけれど、ご参考まで。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) 3つのプロシージャをまとめたら実行時エラー発生で対応不能 6 2022/05/17 01:47
- Visual Basic(VBA) 別シートのデータを参照して値を入れたい。 まとめデータシートのC列D列の値を商品一覧シートのコードが 7 2022/08/17 13:20
- Visual Basic(VBA) エラーコード1004 6 2022/06/09 14:12
- Visual Basic(VBA) 配列の勉強をしています。使用する変数の意味、検索条件の書き方が難しいです。 2 2022/09/15 14:06
- Visual Basic(VBA) 稀に1円合いません? Sheet1から金額と個数を貼り付ける下記コードで、金額を切り上げるコードを何 3 2022/09/05 15:11
- Excel(エクセル) VBA 特定の列に入っているテキストをコピペ 2 2023/06/14 11:24
- Visual Basic(VBA) excel2021で実行できないマクロ。どこを直したらいいのか 2 2022/03/28 03:40
- Visual Basic(VBA) シフト表のコマで「ブロック」されている前の時間の「出」を同一列の「休」と入れ替えたいがふぇきません。 2 2023/08/02 18:49
- Visual Basic(VBA) VBAが止まります。 3 2022/08/31 14:09
- Visual Basic(VBA) 追記する列を増やしたい 2つのデータを検索・照合して元データにないデータを下記マクロで商品名を追記し 9 2022/10/05 10:50
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
給与明細は給与振込日の何日前...
-
日本では30年間給与が上がって...
-
自営業の妻だけど給与がほしい。
-
給与規定どおりの計算でなくて...
-
柔道整復師で株式会社を立ち上...
-
移民が増えると 給与基準が崩れ...
-
「給与振込」と「総合振込」の...
-
郵便局職員の給与はどれくらい?
-
社会人4年目、基本給248000円。...
-
Salary JPY 10.0M - JPY 14.0M ...
-
前職からの給与振込みの確認手...
-
コンビニの試傭期間中、自己都...
-
労働保険料の計算は賃金の発生...
-
派遣リクルートスタッフィング...
-
準公務員って?
-
週刊誌記者っていう商売の魅力
-
給料明細が紙からメールで?
-
今現在雇用している社員が、以...
-
減給10分の1ってことは10...
-
インセンティブを給与として払...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
労働保険料の計算は賃金の発生...
-
給与明細は給与振込日の何日前...
-
公務員で退職した場合、最後の...
-
手書きの賃金台帳で教えて頂き...
-
自営業の妻だけど給与がほしい。
-
給与の所定項目で【100%歩引】...
-
減給10分の1ってことは10...
-
「給与振込」と「総合振込」の...
-
準公務員って?
-
本日はプレミアムフライデーで...
-
インセンティブを給与として払...
-
皆さんの感じ方を教えて下さい...
-
給与規定どおりの計算でなくて...
-
柔道整復師で株式会社を立ち上...
-
Salary JPY 10.0M - JPY 14.0M ...
-
フルキャストの即給について
-
SQL ORDER BY句に別名を指定
-
AKBグループ・坂道グループの平...
-
一般社団法人や公益財団法人な...
-
週刊誌記者っていう商売の魅力
おすすめ情報
ネットで調べて、繰り返しの方法をいくつか試したのですが、うまくいかずこの質問に至っています。
すみませんが、そのままコピペすれば良いレベルで教えていただけると助かります。
Sub kyuyo()
With Worksheets("20XX年XX月給与")
For Each c In Cells(1, 2).Resize(Cells(rows.Count, 2).End(xlUp).row)
Dim W_s As Worksheet
Set W_s = ActiveSheet
Worksheets("明細").Copy
If c.Value <> 0 Then
Worksheets("明細").Range("C1").Value = W_s.Range("a1").Value '氏名
Worksheets("明細").Range("D1").Value = c.Offset(0, -1).Value '給与額
ActiveSheet.Name = W_s.Range("b3").Range("a1").Value
上記で、どこに間違いがあるでしょうか?