![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?e8efa67)
A 回答 (2件)
- 最新から表示
- 回答順に表示
![](http://oshiete.xgoo.jp/images/v2/common/profile/M/noimageicon_setting_15.png?e8efa67)
No.2
- 回答日時:
前にお知らせしたマクロをサブルーチンとして使い、次のマクロ3を一つ動かすだけで全ての作業が1回で出来ます。
もし関心がおありでしたら、詳細をお知らせします。Option Explicit
Sub Macro3()
'
' Macro3 Macro
' マクロ記録日 : 2012/5/8 ユーザー名 :
'
Macro9
Macro4
Macro1
Macro5
Macro10
Macro8
Macro2
Macro11
'
End Sub
Sub Macro11()
'
' Macro11 Macro
' マクロ記録日 : 2012/5/8 ユーザー名 :
'
'
Columns("C:C").Select
Selection.AutoFilter
Selection.AutoFilter Field:=1, Criteria1:="99"
End Sub
![](http://oshiete.xgoo.jp/images/v2/common/profile/M/noimageicon_setting_15.png?e8efa67)
No.1
- 回答日時:
疑問点はデータは同一年か複数年にわたるかですが、一応複数年としてやってみました。
8つのステップで8つのマクロで最終データが得られます。ここでは作業の概要だけ記します。
もとのdataはシート1のa1からb30の範囲にあるものとします。
1全データをしーと2にコピーして、B1からB30を切り取りA31からA60にはりつけする。マクロ9
2シート2第1列のデータを並べ替え マクロ4
3重複データがあるか調べて、重複しているデータを空欄にして第2列に示し、第3列には空欄をなくしたものを示す。マクロ1
4シート2の第3列をコピーしてしーと3に貼り付ける。マクロ5
5シート3の第2列に月名を抽出する。マクロ8
6シート3第2列を月の順に並べ替え マクロ8
7シート3のコピーシート(シート3(2))で月別に頻度を調べる マクロ2
8シート3(2)で月別の頻度を示す マクロ6
Sub Macro1()
'
' Macro1 Macro
' マクロ記録日 : 2012/5/5 ユーザー名 :
'
Dim mygyo As Integer, ckdata As Variant, ckgyo As Integer, newgyo As Integer
Cells(1, 2) = Cells(1, 1)
For mygyo = 2 To 60
ckgyo = mygyo - 1
ckdata = Cells(ckgyo, 1)
If Cells(mygyo, 1) <> ckdata Then
Cells(mygyo, 2) = Cells(mygyo, 1)
End If
'Cells(mygyo, 2) = ckdata
'Cells(mygyo, 2) = Cells(mygyo, 1)
Next
newgyo = 1
For mygyo = 1 To 60
If Cells(mygyo, 2) <> "" Then
Cells(newgyo, 3) = Cells(mygyo, 2)
newgyo = newgyo + 1
Else
newgyo = newgyo
End If
'Cells(mygyo, 2) = ckdata
'Cells(mygyo, 2) = Cells(mygyo, 1)
Next
'
End Sub
Sub Macro2()
'
' Macro2 Macro
' マクロ記録日 : 2012/5/5 ユーザー名 :
'
Dim mygyo As Integer, ckgyo As Integer
Cells(1, 2) = 1
ckgyo = 1
For mygyo = 2 To 59
ckgyo = mygyo - 1
If Cells(mygyo, 1) = Cells(ckgyo, 1) Then
Cells(mygyo, 2) = Cells(ckgyo, 2) + 1
Else
Cells(mygyo, 2) = 1
Cells(ckgyo, 3) = 99
End If
Next
ckgyo = mygyo - 1
Cells(ckgyo, 3) = 99
'
End Sub
Sub Macro4()
'
' Macro4 Macro
' マクロ記録日 : 2012/5/7 ユーザー名 :
'
'
Columns("A:A").Select
Selection.Sort Key1:=Range("A1"), Order1:=xlAscending, Header:=xlGuess, _
OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, SortMethod _
:=xlPinYin
End Sub
Sub Macro5()
'
' Macro5 Macro
' マクロ記録日 : 2012/5/7 ユーザー名 :
'
'
Range("C1:C59").Select
Application.CutCopyMode = False
Selection.Copy
Sheets("Sheet3").Select
Range("A1").Select
Selection.PasteSpecial Paste:=xlValues, Operation:=xlNone, SkipBlanks:= _
False, Transpose:=False
End Sub
Sub Macro8()
'
' Macro8 Macro
' マクロ記録日 : 2012/5/7 ユーザー名 :
'
'
Range("B1:B59").Select
Selection.Copy
Sheets("Sheet3 (2)").Select
Range("A1").Select
Selection.PasteSpecial Paste:=xlValues, Operation:=xlNone, SkipBlanks:= _
False, Transpose:=False
Application.CutCopyMode = False
Selection.Sort Key1:=Range("A1"), Order1:=xlAscending, Header:=xlGuess, _
OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, SortMethod _
:=xlPinYin
End Sub
Sub Macro6()
'
' Macro6 Macro
' マクロ記録日 : 2012/5/7 ユーザー名 :
'
'
Selection.AutoFilter
Selection.AutoFilter Field:=3, Criteria1:="99"
End Sub
Sub Macro9()
'
' Macro9 Macro
' マクロ記録日 : 2012/5/7 ユーザー名 :
'
'
Range("A1:B30").Select
Selection.Copy
Sheets("Sheet2").Select
Range("A1").Select
ActiveSheet.Paste
Range("B1:B30").Select
Application.CutCopyMode = False
Selection.Cut
Range("A31").Select
ActiveSheet.Paste
End Sub
Sub Macro10()
'
' Macro10 Macro
' マクロ記録日 : 2012/5/7 ユーザー名 :
'
'
Range("B1").Select
ActiveCell.FormulaR1C1 = "=MONTH(RC[-1])"
Range("B1").Select
Selection.Copy
Range("B2:B59").Select
ActiveSheet.Paste
End Sub
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) Excelについて A1からA12まで、1月〜12月と入力し、 B1からB12の範囲に、C1とD1に 4 2022/05/26 22:48
- Visual Basic(VBA) Sheet2からオートフィルターで売上日を抽出した件数をカウントし、その件数をSheet1のセルB1 2 2023/01/12 12:24
- Visual Basic(VBA) VBAで自動集計(特定セルコピー月ごとに値貼り付け)したい。 6 2023/06/25 11:37
- Excel(エクセル) 現時点の年齢を算出して、その年齢と一致したセルを色付けしたい。 4 2022/06/23 17:49
- Excel(エクセル) excelで同日を除いて数えたい 5 2023/01/15 22:08
- Excel(エクセル) ExcelにてA1セルに1、B1セルに月と入力した際に、A列に日付、B列に曜日が入力される様になる為 1 2023/03/02 06:47
- Excel(エクセル) エクセル 条件に合う日付に入力された時間数の合計したい 4 2022/06/17 22:18
- Excel(エクセル) 条件付き書式 ある範囲で色がついているセルと同行の別のセルに色を付けたい 4 2022/04/20 07:04
- Visual Basic(VBA) VBAで列を削除 3 2023/02/01 11:00
- Excel(エクセル) エクセルの数式で教えてください。 2 2023/01/10 09:15
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
ACCESS で 項目名を出力せずに...
-
アクセスクエリ(複数)→マクロ...
-
エクセル 入力フォームのデータ...
-
エクセルで縦のカラムデータを...
-
指数表示しない方法
-
AccessでUTF-8のtxtデータを出力
-
Accessでエクセル出力の保存先指定
-
Access データベースの最適化を...
-
Accessにはマクロ記録って無い...
-
Access Excel出力する保存先を...
-
Accessのデータを既存のExcelフ...
-
データをテキストファイルに定...
-
【Excel】[Expression.Error] ...
-
共有フォルダに誰が何にアクセ...
-
タブ区切りデータからダブルコ...
-
ACCESSのモジュールエラー?
-
(Excelマクロ)datファイルをエ...
-
アクセスのファイルが壊れた!!!!!!
-
AccessVBA 実行時エラー'2766'...
-
Batch: フォルダ内の特定のファ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
ACCESS で 項目名を出力せずに...
-
アクセスクエリ(複数)→マクロ...
-
エクセルで縦のカラムデータを...
-
Accessでエクセル出力の保存先指定
-
Access Excel出力する保存先を...
-
Access データベースの最適化を...
-
指数表示しない方法
-
teraterm から起動したプログラ...
-
EXCELでシート別にPDF出力出来...
-
AccessのデータをExcelの決まっ...
-
アクセスからエクスポートする...
-
AccessでUTF-8のtxtデータを出力
-
エクセル 入力フォームのデータ...
-
ACCESSのエクスポートでEXCELの...
-
Access内の任意のクエリを指定...
-
Access2013の質問です
-
Accessのデータを既存のExcelフ...
-
エクセルVBA レイアウト変更CS...
-
Accessレポート出力時の範囲指定
-
T-SQLでselectの結果をCSV出力...
おすすめ情報