advanced help
per page, with , order by , clip by
Results of 1 - 1 of about 27291 for マクロ (0.014 sec.)
[[20210629194817]]
#score: 2168
@digest: 6a77e8daebb8552dcbba46a6d80dc91b
@id: 88208
@mdate: 2021-06-30T11:07:40Z
@size: 19430
@type: text/plain
#keywords: ロ前 (184991), 騎手 (83588), 前") (70427), replaceformat (56029), 着as (50494), 複勝 (44702), searchformat (39264), 着= (33166), 指)" (30995), 着wo (30995), replacement (30708), searchorder (29253), 斤量 (26349), xlbyrows (25924), 手3 (23618), 別定 (23087), 手1 (22706), 手2 (21067), 右", (20713), 特指 (20578), 左", (20449), matchcase (20034), xlpart (19226), lookat (14556), し") (14553), replace (10440), selection (10109), myrng2 (9540), what (8320), worksheets (7332), false (6178), 準偏 (6156)
『コードが動かなくなりました』(うーん)
はじめまして 以前競馬の成績をシートにコピペして一覧形式にするマクロをつくりました でも最近動かしたら ←のところで型がいっちしませんと出るようになりました なぜでしょうか コード Option Explicit Sub 成績1() ' ' Macro4 Macro Dim max_row As Long Dim min_row As Long '開始行と最終行の行番号取得 min_row = Worksheets("マクロ前").UsedRange.Row max_row = Worksheets("マクロ前").UsedRange.Rows.Count - min_row - 1 Application.ScreenUpdating = False Dim cnt As Long Dim r As Variant Dim レース番号 As Variant Dim レース名 As Variant Dim 距離1 As Variant Dim 距離2 As Variant Dim 距離3 As Variant Dim 斤量 As Variant Dim 斤量2 As Variant Dim 斤量3 As Variant Dim 騎手1 As Variant Dim 騎手2 As Variant Dim 騎手3 As Variant Dim 馬体重 As Variant Dim 一着 As Variant Dim 二着 As Variant Dim 三着 As Variant Dim 四着 As Variant Dim 五着 As Variant Dim 単勝 As Variant Dim 複勝 As Variant Dim 複勝2着 As Variant Dim 複勝3着 As Variant Dim 性齢 As Variant Dim 日付1 As Variant Dim 日付2 As Variant Dim 場1 As Variant Dim クラス As Variant Dim タイム As Variant Dim shp As Shape Dim MyRNG As Range Dim MyRNG2 As Range With ActiveSheet For Each MyRNG In .Range("A1", .Cells(.Rows.Count, "A").End(xlUp)) If MyRNG.Value Like "*R*" Then MyRNG.Copy MyRNG.Offset(, 1) End If Next MyRNG End With cnt = 1 Application.DisplayAlerts = False Sheets("マクロ前").Select Cells.Select Range("B1").Activate Selection.UnMerge ' Columns("b:b").Select Selection.Replace What:="*R", Replacement:="", LookAt:=xlPart, _ SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _ ReplaceFormat:=False Columns("B:L").Select Selection.Insert Shift:=xlToRight, CopyOrigin:=xlFormatFromLeftOrAbove Columns("A:A").Select Selection.Replace What:="(混)", Replacement:="", LookAt:=xlPart, _ SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _ ReplaceFormat:=False Selection.Replace What:="[指]", Replacement:="", LookAt:=xlPart, _ SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _ ReplaceFormat:=False Selection.Replace What:="(特指)", Replacement:="", LookAt:=xlPart, _ SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _ ReplaceFormat:=False Selection.Replace What:="(国際)", Replacement:="", LookAt:=xlPart, _ SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _ ReplaceFormat:=False Selection.Replace What:="(指)", Replacement:="", LookAt:=xlPart, _ SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _ ReplaceFormat:=False Selection.Replace What:="サラ系", Replacement:="サラ系 ", LookAt:=xlPart, _ SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _ ReplaceFormat:=False Selection.Replace What:="(牝)", Replacement:="牝 ", LookAt:=xlPart, _ SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _ ReplaceFormat:=False Selection.Replace What:="( 別定 )", Replacement:=" 別定 ", LookAt:=xlPart, _ SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _ ReplaceFormat:=False Selection.Replace What:="( 馬齢 )", Replacement:=" 馬齢 ", LookAt:=xlPart, _ SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _ ReplaceFormat:=False Selection.Replace What:="( 定量 )", Replacement:=" 定量", LookAt:=xlPart, _ SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _ ReplaceFormat:=False Selection.Replace What:="(ハンデ)", Replacement:=" ハンデ", LookAt:=xlPart, _ SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _ ReplaceFormat:=False Cells.Replace What:="( 別定 )", Replacement:=" 別定 ", LookAt:=xlPart, _ SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _ ReplaceFormat:=False Selection.Replace What:="芝右", Replacement:="芝右 ", LookAt:=xlPart, _ SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _ ReplaceFormat:=False Selection.Replace What:="芝左", Replacement:="芝左 ", LookAt:=xlPart, _ SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _ ReplaceFormat:=False Selection.Replace What:="ダート右", Replacement:="ダート右 ", LookAt:=xlPart, _ SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _ ReplaceFormat:=False Selection.Replace What:="ダート左", Replacement:="ダート左 ", LookAt:=xlPart, _ SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _ ReplaceFormat:=False Selection.Replace What:="年", Replacement:="年 ", LookAt:=xlPart, _ SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _ ReplaceFormat:=False Range("A10").Select Columns("A:A").Select Selection.TextToColumns Destination:=Range("A1"), DataType:=xlDelimited, _ TextQualifier:=xlDoubleQuote, ConsecutiveDelimiter:=True, Tab:=True, _ Semicolon:=False, Comma:=False, Space:=True, Other:=False, FieldInfo _ :=Array(1, 1), TrailingMinusNumbers:=True Columns("B:L").Select Selection.SpecialCells(xlCellTypeBlanks).Select Selection.Delete Shift:=xlToLeft Columns("F:G").Select Selection.Insert Shift:=xlToRight, CopyOrigin:=xlFormatFromLeftOrAbove Columns("C:C").Select Range("C203").Activate '一時的無効化 'Selection.Replace What:="*(", Replacement:="(", LookAt:=xlPart, _ SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _ ReplaceFormat:=False ' Selection.Replace What:="(", Replacement:="", LookAt:=xlPart, _ SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _ ReplaceFormat:=False ' Selection.Replace What:=")", Replacement:="", LookAt:=xlPart, _ SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _ ReplaceFormat:=False With ActiveSheet For Each MyRNG2 In .Range("c1", .Cells(.Rows.Count, "c").End(xlUp)) If MyRNG2.Value Like "牝" Then MyRNG2.Copy MyRNG2.Offset(-1, 3) End If Next MyRNG2 End With Columns("E:E").Select Range("E42").Activate Selection.TextToColumns Destination:=Range("E1"), DataType:=xlDelimited, _ TextQualifier:=xlDoubleQuote, ConsecutiveDelimiter:=True, Tab:=True, _ Semicolon:=False, Comma:=False, Space:=True, Other:=False, FieldInfo _ :=Array(1, 1), TrailingMinusNumbers:=True Columns("F:G").Select Range("F54").Activate Selection.SpecialCells(xlCellTypeBlanks).Select Selection.Delete Shift:=xlToLeft Columns("E:E").Select Range("E49").Activate Selection.SpecialCells(xlCellTypeBlanks).Select Selection.Delete Shift:=xlToLeft Columns("C:C").Select Range("C155").Activate Selection.Replace What:="4歳上", Replacement:="", LookAt:=xlPart, _ SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _ ReplaceFormat:=False For r = min_row To max_row If Worksheets("マクロ前").Cells(r, 1).Value Like "202?年" Then ← 'データ取得1 日付1 = Worksheets("マクロ前").Cells(r, 2).Value 場1 = Worksheets("マクロ前").Cells(r, 3).Value End If If Worksheets("マクロ前").Cells(r, 1).Value Like "*R" Then 'データ取得 レース番号 = Worksheets("マクロ前").Cells(r, 1).Value レース名 = Worksheets("マクロ前").Cells(r + 2, 1).Value クラス = Worksheets("マクロ前").Cells(r + 2, 2).Value 距離1 = Worksheets("マクロ前").Cells(r + 2, 3).Value 距離2 = Worksheets("マクロ前").Cells(r, 5).Value 一着 = Worksheets("マクロ前").Cells(r + 5, 4).Value 二着 = Worksheets("マクロ前").Cells(r + 6, 4).Value 三着 = Worksheets("マクロ前").Cells(r + 7, 4).Value 騎手1 = Worksheets("マクロ前").Cells(r + 5, 7).Value 騎手2 = Worksheets("マクロ前").Cells(r + 6, 7).Value 騎手3 = Worksheets("マクロ前").Cells(r + 7, 7).Value 斤量 = Worksheets("マクロ前").Cells(r + 5, 6).Value タイム = Worksheets("マクロ前").Cells(r + 5, 9).Value '着順終了 単勝 = Worksheets("マクロ前").Cells(r + 9, 3).Value 複勝 = Worksheets("マクロ前").Cells(r + 10, 3).Value 複勝2着 = Worksheets("マクロ前").Cells(r + 11, 3).Value 複勝3着 = Worksheets("マクロ前").Cells(r + 12, 3).Value 性齢 = Worksheets("マクロ前").Cells(r + 5, 5).Value 'データ書き出し Worksheets("書き出し").Cells(cnt, 1).Value = 日付1 Worksheets("書き出し").Cells(cnt, 2).Value = 場1 Worksheets("書き出し").Cells(cnt, 3).Value = レース番号 Worksheets("書き出し").Cells(cnt, 4).Value = レース名 Worksheets("書き出し").Cells(cnt, 5).Value = クラス Worksheets("書き出し").Cells(cnt, 6).Value = 距離1 Worksheets("書き出し").Cells(cnt, 7).Value = 距離2 Worksheets("書き出し").Cells(cnt, 8).Value = 一着 Worksheets("書き出し").Cells(cnt, 9).Value = 二着 Worksheets("書き出し").Cells(cnt, 10).Value = 三着 '着順終了 Worksheets("書き出し").Cells(cnt, 11).Value = "払戻金" Worksheets("書き出し").Cells(cnt, 12).Value = 単勝 Worksheets("書き出し").Cells(cnt, 13).Value = 複勝 Worksheets("書き出し").Cells(cnt, 14).Value = 複勝2着 Worksheets("書き出し").Cells(cnt, 15).Value = 複勝3着 Worksheets("書き出し").Cells(cnt, 16).Value = 性齢 Worksheets("書き出し").Cells(cnt, 17).Value = 騎手1 Worksheets("書き出し").Cells(cnt, 18).Value = 騎手2 Worksheets("書き出し").Cells(cnt, 19).Value = 騎手3 Worksheets("書き出し").Cells(cnt, 21).Value = 斤量 Worksheets("書き出し").Cells(cnt, 22).Value = タイム cnt = cnt + 1 End If Next r Sheets("書き出し").Select Cells.Select Selection.Replace What:="円", Replacement:="", LookAt:=xlPart, _ SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _ ReplaceFormat:=False Selection.Replace What:="r", Replacement:="", LookAt:=xlPart, _ SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _ ReplaceFormat:=False Selection.Replace What:="サラ系", Replacement:="", LookAt:=xlPart, _ SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _ ReplaceFormat:=False Columns("C:C").Select Selection.NumberFormatLocal = "G/標準" Columns("D:D").Select Selection.Replace What:="(*)", Replacement:="", LookAt:=xlPart, _ SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _ ReplaceFormat:=False Columns("C:C").Select Selection.Replace What:="r", Replacement:="", LookAt:=xlPart, _ SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _ ReplaceFormat:=False Columns("A:A").Select Selection.Replace What:="(*)", Replacement:="", LookAt:=xlPart, _ SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _ ReplaceFormat:=False Range("A1:a100").Select Selection.Copy Sheets("成績2").Select Range("C1").Select Selection.End(xlDown).Offset(1, 0).Select ActiveSheet.Paste Sheets("書き出し").Select Range("c1:p100").Select Selection.Copy Sheets("成績2").Select Range("e1").Select Selection.End(xlDown).Offset(1, 0).Select ActiveSheet.Paste Columns("v:v").Select Selection.NumberFormatLocal = "m:ss.0" Range("b1").Select Columns("q:q").Select Selection.NumberFormatLocal = "G/標準" Sheets("書き出し").Select Cells.Select Selection.ClearContents Sheets("マクロ前").Select ActiveSheet.DrawingObjects.Select ActiveSheet.Shapes.SelectAll ActiveSheet.Shapes.SelectAll ActiveSheet.DrawingObjects.Select Selection.Delete Cells.Select Selection.ClearContents Range("a1").Select Application.DisplayAlerts = True Application.ScreenUpdating = True End Sub サイト https://keiba.yahoo.co.jp/race/price/21050301/ です助けてください < 使用 Excel:Excel2019、使用 OS:Windows10 > ---- >Worksheets("マクロ前").UsedRange.Row これ、Range("A1:E20").row とやっているのと何ら変わりがないと思いますが・・・。 ちゃんと意味が解っているんですかね? (不明) 2021/06/29(火) 20:19 ---- 以前までは動いてて突然エラーになりました もちろんコードは触ってません (うーん) 2021/06/29(火) 20:33 ---- >もちろんコードは触ってません そういう事なら他も含め説明しても意味がないので他の回答者からの返答をお待ち下さい。 (不明) 2021/06/29(火) 20:54 ---- こんばんは! 今まで動いていた方が奇跡であっていつ動かなくなってもおかしくないコードだから仕方がないとしか言えません。 なので取り敢えず min_row = Worksheets("マクロ前").UsedRange.Row max_row = Worksheets("マクロ前").UsedRange.Rows.Count - min_row - 1 のUsedRange とか Selection とかを全部やめてきちんと書く それからコードを書くということは、デバッグするということで書くだけなら極端に言えば誰でも書けるわけです。 型の宣言も なんでもかんでも Variant はなくて ちゃんと指定する そんなこんなでとても面倒の見れるようなコードじゃないのでもう一度全部書き直した方がいいです。 まぁ、その黄色くなっているところにカーソルを当てて変数の中身をみてみるとか、、、ぐらいで 動かないから何とかしてくださいと言われてもこっちが「何とかしてください」です。 (SoulMan) 2021/06/29(火) 21:06 ---- Excel2013で試してみたがError無し (?) 2021/06/29(火) 21:33 ---- あっ、そうなんですね。。。 検証ご苦労様です。ありがとうございます。 ということは、不確定要素が多すぎて再現性がないということでしょうか? では、その マクロ前 というシートを新規に作成してみるとかでしょうか? (SoulMan) 2021/06/29(火) 21:38 ---- えっエラーがなかったですかなんででしょうか (ひろくん) 2021/06/29(火) 22:13 ---- ニックネームなぜ変更した。 >なんででしょうか 貴方のExcelがおかしいのでは? >マクロですかどういうマクロを書けばいいですか >(ひろくん) 2021/04/25(日) 22:43 と言っているので本当に自分で作成したのか疑う予知あり。 (?) 2021/06/29(火) 22:47 ---- 掲示されたマクロは、チラ見程度で良く見ていませんが エラーはでません。 ただ、エラーの出てしまう場合もありますね。 それはコードを理解できていないからかと思います。 (あみな) 2021/06/30(水) 05:59 ---- ざっと見ただけなので、エラー解消のアドバイスではなく感想ですが。 ■1 VBAの世界では基本的にシートやセル(オブジェクトといいます)を明示すれば、いちいち選択したりアクティブにしたりする必要はありません。 さらに、「標準モジュール」でシートの指定を省略すると、アクティブシートを指定したものとして扱われます。 したがって、複数のシートを相手にする処理を考えるのであれば、きちんとオブジェクトを修飾(指定)するようにしたほうが良いでしょう。 ■2 「もちろんコードは触ってません」とのことですが、おかしいのであれば、むしろちゃんと自己検証して修正すべきでしょう。 そして検証作業には、やはり【ステップ実行】が有用であるとおもいますのでトライしてみてはどうですか? ※どうも↓と同一の方のようですが再掲します。 [[20210625225354]] 『シートの並べ替えで』(ひろくん) 【ステップ実行】 https://www.239-programing.com/excel-vba/basic/basic023.html http://plus1excel.web.fc2.com/learning/l301/t405.html また、以下も知っておいて損は無いと思います。 【イミディエイトウィンドウ】 https://www.239-programing.com/excel-vba/basic/basic024.html https://excel-ubara.com/excelvba1/EXCELVBA486.html 【ローカルウィンドウ】 https://excel-ubara.com/excelvba4/EXCEL266.html http://excelvba.pc-users.net/fol8/8_2.html 【ブレークポイント】 https://www.239-programing.com/excel-vba/basic/basic022.html https://www.tipsfound.com/vba/01010 ■3 マクロの実行に寄与するものではありませんが、インデント(字下げ)をするのもデバッグ作業には有効だと思いますので、こだわりが無ければキチンとインデントを付けることをお勧めします。 (現状だと、どこからどこまでがループなのかぱっと見わかりませんよね?) (もこな2) 2021/06/30(水) 08:05 ---- ありがとうございますでも私はもこな2さんのいうひろくんさんは知りませんが とりあえずみてみます (うーん) 2021/06/30(水) 17:27 ---- ↑ 隠し事をして嘘をついているように見える気がする? ($$) 2021/06/30(水) 18:24 ---- ■4 >私はもこな2さんのいうひろくんさんは知りません そうですか↓はトピ主ではないのですね。失礼しました。 >えっエラーがなかったですかなんででしょうか >(ひろくん) 2021/06/29(火) 22:13 まぁいずれにせよ、知っておいて損は無いと思いますので確認してみてください。 ■5 対象オブジェクトを明確にすべきことは既に指摘していますが、他にも↓のように既定値はわざわざ指定しない(省略する)というのも、コードを見やすくする上では有用であるとおもいます。 Columns("A:A").Select Selection.Replace What:="(混)", Replacement:="", LookAt:=xlPart, _ SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _ ReplaceFormat:=False Selection.Replace What:="[指]", Replacement:="", LookAt:=xlPart, _ SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _ ReplaceFormat:=False Selection.Replace What:="(特指)", Replacement:="", LookAt:=xlPart, _ SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _ ReplaceFormat:=False Selection.Replace What:="(国際)", Replacement:="", LookAt:=xlPart, _ SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _ ReplaceFormat:=False ↓ With ActiveSheet.Columns("A:A") .Replace What:="(混)", Replacement:="", LookAt:=xlPart .Replace What:="[指]", Replacement:="", LookAt:=xlPart .Replace What:="(特指)", Replacement:="", LookAt:=xlPart .Replace What:="(国際)", Replacement:="", LookAt:=xlPart また、何度も置換処理をするのであれば、どこかに置換一覧表を作成しておいて、ループ処理にするという手もありますね。 ■6 また、好みによるのでしょうが、↓のように1度しか出てこないものをいちいち変数に格納するのも効率が悪いようにおもいますので、コピペする処理にしてみたり、Valueプロパティを直接参照するようにしてもよいでしょう。 騎手1 = Worksheets("マクロ前").Cells(r + 5, 7).Value 騎手2 = Worksheets("マクロ前").Cells(r + 6, 7).Value 騎手3 = Worksheets("マクロ前").Cells(r + 7, 7).Value Worksheets("書き出し").Cells(cnt, 17).Value = 騎手1 Worksheets("書き出し").Cells(cnt, 18).Value = 騎手2 Worksheets("書き出し").Cells(cnt, 19).Value = 騎手3 ■7 >←のところで型がいっちしませんと出るようになりました とりあえず、その部分だけ抜き出してどの【行】でエラーが出るかチェックしてみたらどうですか? Sub test() Dim r As Long With Worksheets("マクロ前") For r = .UsedRange.Row To .UsedRange.Rows.Count - min_row - 1 If .Cells(r, 1).Value Like "202?年" Then MsgBox r & "行目" Next End With End Sub (もこな2) 2021/06/30(水) 18:44 ---- 標準偏差は、データのバラツキ具合を表す指標として使われます。データのバラツキ具合を表す指標としては、標準偏差のほかに分散も使われます。 標準偏差は、分散の平方根です。標準偏差のほうがデータと同じ視点で見ることができるので、わかりやすいといえるでしょう。 https://www.ceodata.com/stdev-stdevs-stdeva-stdevp/ (excel) 2021/06/30(水) 19:21 ---- ↑ 本題と何ら関係ありませよ。 回答先が違うのでは。 () 2021/06/30(水) 20:07 ...
http://www.excel.studio-kazu.jp/wiki/kazuwiki/202106/20210629194817.txt - [detail] - similar
PREV NEXT
Powered by Hyper Estraier 1.4.13, with 97017 documents and 608140 words.

訪問者:カウンタValid HTML 4.01 Transitional