- ベストアンサー
指定した範囲で連続データを自動入力するマクロを組みたい
- 指定したセルを先頭に、任意で指定した範囲で連続データを自動入力するマクロを組みたいです。
- 具体的には、セルA1にシリアル番号の先頭番号を入力し、セルB1にシリアル番号の最後尾の番号を入力します。その後、C列の5行目を先頭にして、指定した範囲の連続データを自動的に割り当てたいと思っています。
- 現在はセルの範囲を指定して1つずつデータを入力しているのですが、5行目からではなく25行目からデータを入力する方法がわかりません。ご教授いただけますか?
- みんなの回答 (5)
- 専門家の回答
質問者が選んだベストアンサー
その他の回答 (4)
- keithin
- ベストアンサー率66% (5278/7940)
- kagakusuki
- ベストアンサー率51% (2610/5101)
- mar00
- ベストアンサー率36% (158/430)
- FEX2053
- ベストアンサー率37% (7987/21355)
関連するQ&A
- セル内に連続して数字を入力するコード
空白行に連続で数字を入れたくて次のようなコードを記述しましたが、入力できません。 sub() Dim i As Integer i = 1 Do While Cells(2 * i + 6, 1).Value = "" Cells(2 * i + 6, "1").Value = i i = i + 1 Loop end sub 対象のセルは8行1列目からでセル自体は2行1列結合されています。
- ベストアンサー
- その他MS Office製品
- 指定したセルにデータの書き出し
いつもお世話になっております。 VB.net+SQLでデータベース連携しております。 SQLで抽出したデータをエクセルに書き出すプログラムを考えています。 For Each myRow In ds.Tables("Estimate").Rows Code = myRow("Code") xlSheet.Cells(3, 2).Value = Code Next myRow 上記で3行目の2列目にデータを書き出すことは出来たのですが 変数codeには複数のデータを格納していて上記のプログラムだとCells(3, 2).Value と指定しているので、はじめのデータから最後のデータまで同じセルに上書きしてしまっているようです。 これを各データを一行ずつ書き出したいのですが、上手くいきません。 For Each myRow In ds.Tables("Estimate").Rows For i = 3 To 17 Code = myRow("Code") xlSheet.Cells(i, 2).Value = Code i+=1 Next i Next myRow のようにセルの行指示を変数にしたのですが、変わりませんでした。 分かりますでしょうか?
- ベストアンサー
- Visual Basic
- 表の入力を自動的に改行したい
office2007,W7 のユーザーです。 大きいエクセル表を作っております。N列M行の表のデータを入力するとき、第1列の全セルの入力を終わり、次行のデータを入力する際、アクチブセルが自動的に次行先頭セルに移るようにすることはできないでしょうか。範囲指定して反転したセルの 第1セルから始めることはできますが、表の記入を中断したのち再開すると、アクチブセルがまた第1列第1行に戻ってしまって、前回の入力の続きができません。 よろしくお願いします。
- 締切済み
- Excel(エクセル)
- Excelで同一セル内に入力されているデータを他のセルに分割したい
http://okwave.jp/qa4369634.html?ans_count_asc=20 で質問をして、何度かやりとりをさせていただいて エクセルで同一セル内に、セル内改行で1~6列ほどのデータが入力されています。 縦にデータが入力されていて、それぞれのセルにセル内改行を含み、データが入力されています。 それぞれのセル内のデータを… 例えば、A1セル内に5行入力されていたら、A2セルから入力されている行数分(ここでいうと5行)挿入し、それぞれにデータを分割して入力させたい。 かつ、B・Cセルは増えたセルにそれぞれのデータをコピーしたいと言ったら、 Sub Macro1() Dim idx, cnt As Integer Dim wkStr() As String Dim rng As Range ActiveSheet.Copy after:=ActiveSheet For idx = Range("A65536").End(xlUp).Row To 1 Step -1 If InStr(Cells(idx, "A"), Chr(10)) > 0 Then wkStr = Split(Cells(idx, "A").Value, Chr(10)) Set rng = Cells(idx, "B") For cnt = UBound(wkStr) To 0 Step -1 Cells(idx, "A").Value = wkStr(cnt) Cells(idx, "B").Value = rng.Value Cells(idx, "C").Value = rng.Offset(0, 1).Value If cnt > 0 Then Cells(idx, "A").Resize(1, 3).Insert shift:=xlDown End If Next cnt End If Next idx End Sub といったマクロのご回答をいただきました。 これを元に、 ・データが入っているセルをA列→B列に変更 ・A列のデータはセルが増えた分だけ増やしたい ・A1に対応するデータがC1・D1に入っていた場合、対応するデータは残したまま、B列が増えただけ、列を増やしたい と変更したいのですが…。 すいませんが、宜しくお願い致します。
- ベストアンサー
- オフィス系ソフト
- VBA 検索したセルに入力
ExcelのVBAを使用して データの入力されたファイルに行列から検索したセルに数値を入力したいのです。 例えば、名前(行)と、日付(列) 2つの条件で、セルを検索し、該当するセルに、データ(数字とか)を 入力したいのです ------------------------------------ 6/1 6/2 6/3 6/4 ・・・ a b c ・ ・ ------------------------------------ 例えば、A5に名前、B5に日付、データエリアがB10:Z20の場合 =INDEX(B10:Z20,MATCH(A5,A10:A20,0),MATCH(B5,B9:Z9,0)) で、該当するセルを探すことはできたのですが、 このセルに、データを入力したいときは、 ROWやCOLUMNで、行番号、列番号を取り出して Cellsで、入力すればいいのかな?と考えていますが もっと簡単にできるのでしょうか? (FIND関数は、使ったことがなく、どうなんだろう?と) それでいいよ とか、こっちの方が簡単 とかあれば、教えてください
- ベストアンサー
- Excel(エクセル)
- ExcelVBAで「Cells」を使ってセルの選択範囲を指定する方法
例えば、セル「A1」から「C5」とセル「F1」から「I4」の範囲を選択する場合、 Range("A1:C5,F1:I4").Select としますがこれを「Cells(Row,Column)」を使うやり方はどのようにすればよいのでしょうか? Range(Cells(1, 1), Cells(5, 3)).Select Range(Cells(1, 6), Cells(4, 9)).Select 上記のような二つに分けてプログラムを動かすのではなく、あくまでセル「A1」から「C5」とセル「F1」から「I4」の範囲を同時に指定する方法です。 回答よろしくお願いします。
- ベストアンサー
- Visual Basic
- 指定したセルに入力したい
エクセルで作った表から位置を指定してセルのないようを取り出す関数は、あると思いますが、逆に表の位置を指定する行、列と内容をそれぞれ表以外の指定したセルに入力することで、表の指定されたセルに内容が入力されるようにしたいのですが、わかる方教えて下さいお願いします。
- ベストアンサー
- フリーウェア・フリーソフト
- exelのbookまたがりでセルをコピー貼付けたい
エクセル2010のvbaで質問です。 シンプルなデータ表から、印刷向きレイアウトにした別BOOKにセル内容を 送りたいのですが、うまくいきません。 開いてあるbookまたがりでセル値のコピーをします。送り側は連結セルです。 行、列を可変として順次ループで回すので、RANGEでなくCELLS(行、列)の指定で行いますが、 実行時エラーが出ます。(インデックスが有効範囲にありません) Sheets(OUTSHEET).Cells(行,列).Value = Sheets(INSHEET).Cells(行,列).Value ↑現在この書き方でエラーになります。うまくいく方法はないのでしょうか。 なお、手動でコピーして、送り側セルでエンター押すとできます。 でもそのマクロ記録ではセル番地指定なので、自動化にできません。 詳しい方、よろしくお願いします。
- ベストアンサー
- Excel(エクセル)
- Excelで離れたセルに連続したデータを貼り付けたい
セルB5「=sheet1!C7」のデータをコピーし、 セルB7「=sheet1!C8」 セルB9「=sheet1!C9」・・・ と、連続したデータを貼り付けていきたいのですが、 セルB7「=sheet1!C9」 セルB9「=sheet1!C10」・・・ と行数も2つ飛びで貼り付けになってしまいます。 毎回ひとつひとつ入力するのが大変な手間なのですが、 なんとかならないでしょうか? もうひとつ質問です。 セルB5「=sheet1!C7」のデータを セルE5「=sheet1!C36」 セルH5「=sheet1!C65」 と行番号を29ずつずらして貼り付けたいのですがこれも簡単に貼り付ける方法はないでしょうか? やっぱり毎回ひとつひとつ入力するのが大変です・・・。
- ベストアンサー
- オフィス系ソフト
- VBAでのセル範囲指定について
お世話になります。 私が分からないのは、VBAでのセル範囲指定なのですが、 例えば、シートにデータが有、そのデータの1行目は見出しなので 2行目からデータが入っているセルまでの範囲を指定、コピーして 隣のシートに貼付したいのですが、そのデータの入力される範囲が 毎回違います。「CurrentRegion.Select」としてしまうと、1行目 の見出しまでも範囲指定されてしますので、どうやったら良いのか どなたかお教え頂きたく宜しくお願い申し上げます。
- ベストアンサー
- SE・インフラ・Webエンジニア
お礼
ありがとうございます。 なんとか、組めました。