No.5ベストアンサー
- 回答日時:
返す値が文字列数字でもよいなら、以下の数式を入力し、右方向に適当数、下方向に10行オートフィルコピーしてください(データが100個までの場合)。
=INDEX($A:$A,SMALL(INDEX((RIGHT($A$1:$A$100,1)<>RIGHT(ROW(A1),1))*1000+ROW($A$1:$A$100),),COLUMN(A1)))&""
この回答へのお礼
お礼日時:2011/11/11 23:16
回答ありがとうございます。
前までの方と比べると
とてもシンプルな回答を頂き
これならいつでも、コピー&ペーストで使用できそうですね。
No.6
- 回答日時:
1.範囲 A2:A11 に上から数値 1、2、…、9、0 を入力
2.範囲 A2:A11 に次の“ユーザー定義”を設定
"末尾"G/標準
3.お示しの「1~43迄の最大43個の」数値をセル B1 から右へコピー
4.セル B2 に式 =IF(MOD(B$1,10)=$A2,B$1,"x") を入力して、これを右方および下方へズズーッとドラッグ&ペースト
以上の結果を添付図に示す。
5.範囲 A1:T11 を選択して、[コピー]→[値の貼り付け]を実行
6.範囲 A1:T11 を選択して、文字 x を空白に一発で[すべて置換]を実行
7.範囲 A1:T11 を選択して、[編集]→[ジャンプ]→[セル選択]を実行
8.“空白セル”に目玉を入れて、[OK]をパシーッ
9.[編集]→[削除]を実行
10.“左方向にシフト”にチェックを入れて、[[OK]をパシーッ]
11.1行目を削除
No.4
- 回答日時:
こんばんは!
VBAの方が簡単なような気がしますが・・・
関数で無理矢理やってみました。
Sheet1のデータ(A列)をSheet2に表示するようにしてみました。
↓の画像でSheet2のB1セルに
=IF(SUMPRODUCT((MOD(Sheet1!$A$1:$A$50,10)=MOD(ROW(A1),10))*(Sheet1!$A$1:$A$50<>""))<COLUMN(A1),"",INDEX(Sheet1!$A$1:$A$50,SMALL(IF(MOD(Sheet1!$A$1:$A$50,10)=MOD(ROW(A1),10),ROW($A$1:$A$50)),COLUMN(A1))))
これは配列数式になってしまいますので、この画面からコピー&ペーストする場合は
B1セルに貼り付け後、数式バー内で一度クリック!
編集可能になりますので、Shift+Ctrlキーを押しながらEnterキーで確定!
数式の前後に{ }マークが入り配列数式になります。
これを列方向と行方向にオートフィルでコピーすると
画像のような感じになります。
※ 数式は50行目まで対応できるようにしています。
参考になれば良いのですが・・・m(_ _)m
No.3
- 回答日時:
A1からA43に最大43個の数字を並べ,
どこかてきとーなセルに
=IF(COLUMN(A1)>COUNT(1/$A$1:$A$43/(MOD($A$1:$A$43,10)=MOD(ROW(A1),10))),"",SMALL(IF(($A$1:$A$43<>0)*(MOD($A$1:$A$43,10)=MOD(ROW(A1),10)),$A$1:$A$43),COLUMN(A1)))
と記入してコントロールキーとシフトキーを押しながらEnterで入力し,
右にてきとー数,下にあと9行,コピーします。
No.2
- 回答日時:
珍しい、面倒な質問だ。
VBAで無いと関数とソート操作では面倒かも。ソートして0が一番下に行ってくれないので、工夫が必要だった。
質問の例しかテストしてないので、十分テストしてみて。
(1)修正ソートキーをB列に作る
Sub test01()
d = Range("A65536").End(xlUp).Row
MsgBox d
For i = 1 To d
s = ""
x = Cells(i, "A")
For j = Len(x) To 1 Step -1
If Mid(x, j, 1) = "0" Then
s = s & "a"
Else
s = s & Mid(x, j, 1)
End If
Next j
Cells(i, "B") = "'" & s
Next i
End Sub
(2)B列で(A列もつれ持って)ソートする。VBAでも出来るが、手操作でやる。
中間結果
11
1111
22
1221
33
1331
3333
4334
44
55
66
77
3773
88
1881
99
1991
10a1
20a2
(3)望みの表に編集する
Sub test02()
d = Range("A65536").End(xlUp).Row
x = Cells(1, "B")
j = 5
k = 1
Cells(k, j) = Cells(1, "A")
m = Left(x, 1)
For i = 2 To d
x = Cells(i, "B")
If Left(x, 1) = m Then
j = j + 1
Cells(k, j) = Cells(i, "A")
Else
k = k + 1
j = 5
Cells(k, j) = Cells(i, "A")
m = Left(x, 1)
End If
Next i
End Sub
ーーーー
結果
E列より右列に
111
212
3133343
4
5
6
737
818
919
1020
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- その他(Microsoft Office) Excel入力 英数字 末尾1つづ増やす 1 2022/10/27 23:52
- 日本語 レポートの文字数 5 2022/10/04 08:47
- マウス・キーボード マジェスタッチ3の型番 FC の意味 1 2022/10/20 22:53
- PHP カラーミーショップのSmartyでの文字列抜き出し 2 2022/05/06 11:51
- その他(データベース) カラム上の重複を削除するクエリを教えてください 3 2022/04/12 14:11
- Visual Basic(VBA) 先頭と末尾を指定して連続した数字を入力 1 2022/09/14 13:12
- 文学 当てはまる言葉を教えて下さい。 2 2022/09/27 15:54
- 政治 憲法違反に成らない参議院選挙を発明しました 52 2022/10/18 12:09
- その他(芸能人・有名人) 姓の末尾と名の先頭が同じ著名人をたくさん教えて下さい。 例 山下達郎 やまし"た" "た"つろう 2 2022/07/27 21:41
- アイドル・グラビアアイドル ジャニーズ 5 2023/02/13 12:40
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Access レポート印刷するときに...
-
アクセスクエリの計算
-
Access VBA を利用して、フォル...
-
実行時エラー3131 FROM 句の構...
-
エクセルのデータをアクセスに...
-
アクセスで教えてください。 ク...
-
【至急・画像あり】建物or住所...
-
Accessのスプレッドシートエク...
-
ACCESS VBA でのエラー解決の根...
-
Microsoft Accessをクレジット...
-
accessデータを指定したExcel、...
-
Microsoft365にAccessってあり...
-
Access VBA [リモートサーバー...
-
Accessで作ったデータベースをw...
-
アクセス レポートを開いたとき...
-
日付のテキストボックスに(例...
-
Accessのリンクテーブルのパス...
-
Access で半角スペースと全角ス...
-
アクセスクエリで教えて下さい...
-
Access Error3061 パラメータが...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Access レポート印刷するときに...
-
Access Error3061 パラメータが...
-
Microsoft365にAccessってあり...
-
Accessのクエリで、replace関数...
-
Accessのリンクテーブルのパス...
-
Access VBA [リモートサーバー...
-
ACCESS VBA でのエラー解決の根...
-
accessデータを指定したExcel、...
-
Accessのスプレッドシートエク...
-
CSVファイルの「0落ち」にVBA
-
【Access】Dcount関数の複数条...
-
Accessのフォーム上のテキスト...
-
Access VBA を利用して、フォル...
-
実行時エラー3131 FROM 句の構...
-
Vba Userformを前面に出すについて
-
Accessでフォームに自動入力し...
-
Accessレポートのチェックボッ...
-
Accessのテキストボックスの入...
-
Access 複数条件検索の設定が上...
-
accessのフォームに設置したボ...
おすすめ情報