ここから本文です

エクセルもしくはスプレットシートで 特定の数字を特定の数字でセルに自動で割...

flu********さん

2019/3/1911:59:51

エクセルもしくはスプレットシートで

特定の数字を特定の数字でセルに自動で割り振ることはできますか?

例)
100を3ずつ割り振る。
【/】でセルの区切りとしてください。

123/456/789/101112

のような形にしたいです。
よろしくお願いいたします。

補足a1=100
a2=3
a3=1~3
a4=4~6

のような形が理想です。

閲覧数:
32
回答数:
1
お礼:
100枚

違反報告

ベストアンサーに選ばれた回答

lgk********さん

2019/3/2013:09:38

https://docs.google.com/spreadsheets/d/1k4uhQr5KOyzZuhEYe4CaqWcW9lx...
①関数を使う方法。(シート1)
A3 =IF(ROW(A1)*$A$2-$A$2+1<=$A$1,ROW(A1)*$A$2-$A$2+1,"")&IF(AND(ROW(A1)*$A$2-$A$2+2<=$A$1,2<=$A$2),ROW(A1)*$A$2-$A$2+2,"")&IF(AND(ROW(A1)*$A$2-$A$2+3<=$A$1,3<=$A$2),ROW(A1)*$A$2-$A$2+3,"")&IF(AND(ROW(A1)*$A$2-$A$2+4<=$A$1,4<=$A$2),ROW(A1)*$A$2-$A$2+4,"")&IF(AND(ROW(A1)*$A$2-$A$2+5<=$A$1,5<=$A$2),ROW(A1)*$A$2-$A$2+5,"")
下へコピペ
数字を出して横につないでいるだけなので、長くなります。
最大5つまでの例です。同じ要領で&を使って連結すればもっと増やすことができます。

②ワークエリアを使う方法(シート2)
A3 =CONCATENATE(B3:F3)
下へコピペ
B3 =IF(AND(ROW(A1)*$A$2-$A$2+COLUMN(A1)<=$A$1,COLUMN(A1)<=$A$2),ROW(A1)*$A$2-$A$2+COLUMN(A1),"")
右下へコピペ
これも最大5つまでですが、ワークエリアを増やせばいくつでもできます。

③VBA (エクセルのみ)
'
Option Explicit
'
Sub Macro1()
'
    Dim Row As Integer
    Dim Count As Integer
    Dim OutData As String
'
    Row = 3
'
    For Count = 1 To [A1]
        OutData = OutData & Count
'
        If Count Mod [A2] = 0 Then
            Cells(Row, "A") = OutData
            OutData = ""
            Row = Row + 1
        End If
    Next Count
    Cells(Row, "A") = OutData
End Sub

質問した人からのコメント

2019/3/21 04:01:33

ここまでしっかり答えてくださりありがとうございます!

試してみます!ありがとうございました!

この質問につけられたタグ

みんなで作る知恵袋 悩みや疑問、なんでも気軽にきいちゃおう!

Q&Aをキーワードで検索:

Yahoo! JAPANは、回答に記載された内容の信ぴょう性、正確性を保証しておりません。
お客様自身の責任と判断で、ご利用ください。
本文はここまでです このページの先頭へ

「追加する」ボタンを押してください。

閉じる

※知恵コレクションに追加された質問は選択されたID/ニックネームのMy知恵袋で確認できます。

不適切な投稿でないことを報告しました。

閉じる