• ベストアンサー

連番について

m3_makiの回答

  • m3_maki
  • ベストアンサー率64% (296/460)
回答No.3

No.2です。 > F2は個数別のフィールドに2個あるカウントしたものです。 良く分かりませんので無視。 取り敢えず F2 の値と 連続するレコード数の間に矛盾はあり得ないものとして、エラーチェックはしていません。 Sub test2() Dim strSQL As String Dim dbs As DAO.Database Dim rst As DAO.Recordset Dim num As Long Dim cnt As Long Dim i As Long strSQL = "SELECT * FROM T_変な連番 ORDER BY F1" Set dbs = CurrentDb Set rst = dbs.OpenRecordset(strSQL, dbOpenDynaset) With rst Do Until .EOF num = !F2 cnt = cnt + 1 For i = 1 To num .Edit !F3 = cnt .Update .MoveNext Next Loop .Close End With Set rst = Nothing dbs.Close Set dbs = Nothing End Sub

minoriyuki
質問者

補足

教えて頂きましてありがとうございます。 追加補足です。 例1  例2 F1;F2;F3      F1 ; F2 ; F3 1;2; 1 1 ; 1 ; 1 2;2; 1 2; 2 ; 2 3;1; 2 3 ; 2 ; 2 4;3; 3 4 ; 2 ; 3 5;3; 3 5 ; 2 ; 3 6;3; 3   6 ; 5 ; 4 7;1; 4   7 ; 5 ; 4 8;1; 5 8 ; 5 ; 4 9 ; 2 ; 6 9 ; 5 ; 4 10 ; 2 ; 6 10 ; 5 ; 4 F1とF2に数字が入っておりF3の数字が欲しいのですが、規則性はF3は必ず1から始まります。F1は1から600程度あります。これは1からの連番です。F2はF3の答えが欲しいための唯一の数字です。F2はF3を計算する時に自身の行とその下の行達の行数を示しています。 この例はF2の数字が2であればF3の数字は上下同じになります。ですからF2には1以外は必ず続いて入っています。上記の例2ではF1の2と3がF2が2ですのでF3にはどちらも2が返ります。F1の4と5もF2が2ですがF2が4でないのでF1の2と3とは別です。ですのでF1の4と5には3を返します。このように作りたいのですが、方法が思い浮かびません。アクセスで出す方法をありませんでしょうか。

関連するQ&A

  • 連番になってしまいました。

    教えてください。 特に何もしていないのですが、突然WORDの文章で()が全て連番になってしまいました。下記のような現象です。 1(1) (2) (3) 2(4)←本来ここが(1)になる。 番号を振りなおしてもなぜかまた連番に戻ってしまいます。元に戻す方法はないでしょうか?

  • 連番

    WinXP,OfficeXP使用しております。 Excelで枡に数字が記入してあるの枡の右下にポインターを合わせると「+」が出ます。そこで左クリックを押しながらドラッグすると隣の枡に一番だけ多い数字が現れます。 ところがSP3F-B5I-50などの入った枡を同様な方法でドラッグしますと最後の「50」が「51]となります。 希望するのは中ほどの「B5I]の枡をドラッグすることで「B6I」、[B7I]と順次大きい数字にしたいのです。 宜しくお願いします

  • エクセルで連番をつける

    A    B・・・ E   F・・・ AAA  111   1   1 AAA  222   1   2 BBB  333  2   3 CCC  444   3   4 CCC  555   3   5 入力はA,B列だけです。 (1)A1を入力するとE1は1を表示。B1を入力するとF1は1を表示。 (2)A2を入力した時に、A1と同じ名前ならばE2は1、違う場合は2を表示。以下同条件。 (3)F列は1~連番になります。 (4)途中で行挿入、行削除を行っても自動的にE、F列を修正。 上記の内容で処理するにはどうすれば良いでしょうか?

  • Excelで飛ばし連番

    Excelで連番をふりたいのですが、下記のようなことは可能でしょうか? A列に曜日、B列に連番なのですが、 土曜日と日曜日は飛ばしたいのです。 連番が1000ほど続くので、何かいい方法はないかと考えています。 宜しくお願いいたします。   A B 1 月  1 2  火  2 3 水  3 4  木  4 5 金  5 6 土 7 日 8  月  6 9 火  7   ・  ・   ・  ・   ・  ・ Excel2002を使用しています。

  • 任意の連番 ソフト

    連番をテキストで縦に、数千行書きたいのですが、1から一つづつ1.2.3と連番で書けるソフトは、フリーでいくつかあったのですが、下記のように3個づつなどで記載できるソフトは、ないでしょうか・・?ソフトでなくても良い方法があれば、教えてください。 1 1 1 2 2 2 3 3 3 4 4 4

  • 連番

    今名簿を作成しています。(4000人分) うまく伝わればいいのですが・・・ 一列目(A列)・・・1から50の数字 二列目(B列)・・・氏名 三列目(C列)・・・51から100の数字 四列目(D列)・・・氏名 五列目(E列)・・・101から150の数字 六列目(F列)・・・氏名 そして 一列目に戻り150から200の数字 三列目201から250の数字 五列目251から300数字 といったようにしていきたいのですが、 一列ずつ連番を入力していくのが面倒なので、もっと簡単にできる仕方があれば教えてください。

  • ∫[-1 to 1]f(x)dα(x)の値を求めるには?まず何をすれば

    こんにちは。皆様どうか宜しくお願い致します。 下記の問題はどのような手順で解けばいいのかわからず困っています。 [問]∫[-1 to 1]f(x)dα(x)の値を求めよ。但し, fは[-1,1]で有界で0で連続。そしてαは α(x)= -1 (x<0の時) 0 (x=0の時) 1 (x>0の時) で与えられるものとする。 で正解は2f(0)となっているですがどのようにして計算すればいいのでしょうか?

  • 計算結果が合わない

    下記の計算をしています(計算式=ABC/F+G(D+E) 電卓及びexcelで計算すると、結果の3,683まではあっているのですが、 下記表の4行目の結果が、電卓では、9,684、Excelで計算すると、 どうしても8,507となってしまいます。 計算式が間違っているのでしょうか?? Excel計算式 =B21*C21*D21/G21+H21*(E21+F21) 何度、電卓で計算しても、9,684となってしまいます。 よろしくお願いいたします。 A B C D E F G 結果 2.64  1312.5  511 11.49  1.5  5407  0 327 27.6  1312.5  511 11.49  1.5  5407  20 3,683 23.76 1312.5  511 11.49  1.5  5407  428 9,684

  • 運動方程式の計算

    下記はある問題の運動方程式の計算です。 F-T-μk・mg=ma  (1) T-μk・Mg=Ma   (2) (1)と(2)から張力をもっとも簡単に計算できる方法を教えてください。 いつも、私はいつも、(1)をa=(F-T-μk・mg)/m にして、(2)にaに代入していますが、計算間違いや文字が多くなるので。

  • excel 再計算のショートカットキー

    Ctrl+Alt+F9のショートカットは開いているすべてのブックの再計算だと思う のですが、再計算されません。 オプションの計算方法タグは手動にしていて F9やShift+F9のシートの再計算 はうまくいきます。 隣の人のパソコンだとCtrl+Alt+F9でうまく再計算されるのですが 何かイン ストール時の違いなどご存知の方はいらっしゃいせんか?