- ベストアンサー
行を挿入するマクロ(その2)
http://oshiete1.goo.ne.jp/qa2463805.htmlにて質問させていただき、一度はできたのですが、 別シートで再度行ったところ「実行時エラー'13' 型が一致しません」 というコメントが出て、デバックすると「For n = 1 To x」のところが黄色くなります。 これは何が原因なのでしょうか? よろしくお願いします。
- みんなの回答 (3)
- 専門家の回答
関連するQ&A
- Formsで簡略化
Visual Basic 6.0 前回Controlsで、コードを簡略する事が出来ました。 http://oshiete1.goo.ne.jp/qa5102884.html 同様にFormsでも簡略出来ないのでしょうか? For i = 1 To 5 Controls("Command" & i).Caption = "ABC" Next i ----------------------------------------- For i = 1 To 5 Forms("Form" & i).Caption = "ABC" Next i 上記Formsの使い方をすると、実行時エラー'13': 型が一致しません。 すみませんが、ご教授願います。
- ベストアンサー
- Visual Basic
- マクロについて・・・
下記で文字の「強制全角変換」について質問した者です。 http://oshiete1.goo.ne.jp/qa2737696.html 実際にシートの作成をしていて、範囲も指定して、全角変換できるのですが、 指定範囲外のシートに入力した時にエラーが出るようになりました。 「オブジェクトが必要です(Error424)」 エラー画面が出なくなるためには、どうすれば良いですか?
- ベストアンサー
- オフィス系ソフト
- エクセルで別のシートに連番を入力したい
解決したと思い締め切らせていただいたのですが、 再度問題が出てきたので質問させてください。 http://qanda.rakuten.ne.jp/qa8670339.html ベストアンサーの方法で運用し始めたのですが、コードを入力したシート(シート名:1)にだけ エラーが出ます。 2つのセルを一度にペーストしようとすると、(例えば、C11とC12をC13とC14にコピーペースト) 実行時エラー'13': 型が一致しません。とのエラーが出ます。 解決策があれば教えて頂きたく思いますので、よろしくお願いします。
- ベストアンサー
- Excel(エクセル)
- マクロ シート内容の比べについて
下記のソースで実行したら、 MyStr1(0) = "AAAAAA" & Chr(10) & "BBBBBB" ' の行で "実行時エラー'9'" "インデックスが有効範囲にありません。" というエラーが出ています。 調べても、わからないから、ここで質問をさせて頂きます。 最初に"Old""New""TEMP"3枚のシートが既存しています。 やりたいのは、"Old"シートと"New"シートの内容を検索して、異なる部分を探すことです。 ---------------------------------------------------------------- Sub Macro1() ' M = 3 N = 2 Sheets("Old").Select Sheets("Old").Copy Before:=Sheets(1) Sheets("Old (2)").Select Sheets("Old (2)").Name = "TTT" Dim MyStr1() As String Dim K As Long ReDim MyStr(K) MyStr1(0) = "AAAAAA" & Chr(10) & "BBBBBB" 'エラーになった行 MyStr1(1) = "CCCC" MyStr1(2) = "DDDDD" MyStr1(3) = "FFFFFFFFF" MyStr1(4) = "EEEEEEE" MyStr1(5) = "SSSSSSSSS" MyStr1(6) = "GGGGGGGGG" For K = 0 To 6 X = 1 Y = 1 M = 3 N = N + 1 For Y = 1 To 100 For X = 1 To 300 'セル1の判断ループ If Sheets("Old").Cells(X, Y) = MyStr1(K) Then For M = 3 To 300 X = X + 1 If Sheets("Old").Cells(X, Y) <> Sheets("New").Cells(X, Y) Then Sheets("TTT").Cells(X, Y).Select With Selection.Interior .ColorIndex = 1 .Pattern = xlSolid End With Selection.Font.ColorIndex = 6 End If Next M End If Next X Next Y Next K End Sub ----------------------------------------------------------- 以上、宜しくお願いします。
- 締切済み
- その他(プログラミング・開発)
- シート保護後のコメント挿入
エクセルなのですが、保護をかけた後のシートに対し、 コメントを入れられるようにしたいのです。 以前の質問にマクロを使ってやる方法が載っていたのですが、 具体的にどういう手順で作業すればいいのかわかりません。 <過去質問:エクセル シート保護後コメント挿入ができない> http://oshiete1.goo.ne.jp/qa1260481.html また、これ以外でできる方法はありませんか? ご存知の方がいらっしゃいましたら、教えてください。 よろしくお願い致します。 なお、使用ソフト等は「windows XP/Excel2003」です。
- ベストアンサー
- オフィス系ソフト
- マクロで全てのシートで条件を満たすシートに行を挿入するにはどうしたらいいですか
マクロ初心者です。自分でも作ってみたのですが、なかなか思うようにいかず困っています。 book内のシート3つ目から最後のシートで、条件に一致するシートの特定位置に行を挿入するということがしたいのですが。 条件とは、1列目の最後の行に「合計」と記入されていれば、行を4行挿入し、上の書式をコピーするというものです。 下記に記しているマクロは、シートを指定した場合には動くのですが、これにシートをnとして、FOR...Nextを付け加えてシートを順番に参照させようとしても、うまくいきません。 Sub 行挿入sample3() With Sheets("10007") For i = 7 To .Cells(Rows.Count, 1).End(xlUp).Row If .Cells(i + 1, 1) = "" Then Exit For ElseIf .Cells(i + 1, 1) = "合計" Then Range(Cells(i + 1, 1), Cells(i + 4, 1)).Select Selection.EntireRow.Insert Range(Cells(i, 1), Cells(i, 3)).Select Selection.Copy Range(Cells(i + 1, 1), Cells(i + 4, 3)).PasteSpecial xlPasteFormats End If Next i End With End Sub 知識をお持ちの方、教えていただけるととても助かります。よろしくお願いします。
- ベストアンサー
- Visual Basic
- マクロ:データの抽出(複数条件)
エクセルで以下のようなマクロを作成しました。 シート1のG列がシート2のF4と合致する時、シート2のC列にシート1のB列を貼り付けるのですが、条件を増やし 「シート1G列がシート2のF4と一致」かつ「シート1H列がシート2のG5と一致」かつ「シート1I列がシート2のH5と一致」かつ・・・としたいのですが、If Thenをどのように記述したらよろしいでしょうか。(AND関数の機能です) 宜しくお願いいたします。 Sub data01() With Sheets("Sheet1") x = .UsedRange.Cells(.UsedRange.Count).Row For i = 5 To x If .Cells(i, "G").Value = Worksheets("Sheet2").Range("F4").Value Then n = n + 1 Sheets("Sheet2").Cells(n + 5, "C").Value = .Cells(i, "B").Value End If Next End With End Sub
- ベストアンサー
- オフィス系ソフト
- 【マクロ】全シートでまとめて実行するには?
教えてください。マクロは初心者です。 ↑先ほど、http://oshiete1.goo.ne.jp/qa5695407.html で、ある親切な方に以下のマクロを教えて頂きましたが、私がその時にまとめて聞くのを忘れてしまい、改めて教えていただきたく思います。 ------------------------------------------------ Sub test() Dim R As Long For R = 1 To Cells(Rows.Count, "B").End(xlUp).Row If Cells(R, "B").Value = "土" Or CellsR, "B").Value "日" Then Cells(R, "A").Resize(1, 5).Interior.ColorIndex = 6 End If Next R End Sub ---------------------------------------------------- 上記のマクロを1シートでなく、全シートでまとめて実行したいのですが(どのシートも同様の内容なので)、どうすればいいのかわかりません。 どの個所にどんなコードを入れればよいのでしょうか? よろしくお願いします。 【XP、2003】
- ベストアンサー
- Visual Basic
- VBA、Excelにて複数行をまとめて削除したいのですが
Dim gyou1 As Range, gyou2 As Range gyou1 = 4 gyou2 = 62 For data = 1 To 1440 Rows("gyou1:gyou2").Select Selection.Delete Shift:=xlUp gyou1 = gyou1 + 1 gyou2 = gyou2 + 1 Next data 複数行をまとめて削除したいのですが、型が一致しないとのエラーで上手く実行できません。 どうすればいいでしょうか?
- ベストアンサー
- オフィス系ソフト
- エクセル2013のマクロについて。
Excel 2013のシートでセルに2桁の数字を入れていますがセルの書式設定でユーザー定義を"00"として数値が1桁の場合に頭にゼロがつくようにしてあります。このシートでマクロを作成した時、変数Aを"Dim A As Byte"と定義して、「A = "セル"」の式で マクロの実行が止まり、「実行時エラー'13':型が一致しません。」と出て数値として読み込めないようですがどなたか原因と解決方法ご存知の方教えて下さい。
- 締切済み
- Excel(エクセル)
お礼
おっしゃる通りIFを入れたところ無事にできました。 困っていたところの早々の回答で本当に助かりました。 本当にありがとうございました。