advanced help
per page, with , order by , clip by
Results of 1 - 1 of about 159 for (素人) (0.000 sec.)
[[20220825164445]]
#score: 10177
@digest: 20d771a912e59cd34ed8ba02bf825584
@id: 92111
@mdate: 2022-08-26T08:26:57Z
@size: 7462
@type: text/plain
#keywords: removeempty (44989), textsplit (43738), ctmp (40599), rtmp (38555), sakirow (36340), delimiter (34083), maxcolumn (32129), proplus (27999), ド15 (25562), insider (23330), ク実 (21670), ン22 (21532), ignore (20939), motorow (20299), business2016 (15241), 15427 (14536), 20210 (14319), ismissing (11861), 2207 (10312), xlerrna (8898), 新関 (6339), ビル (6027), business (4903), クイ (4411), イッ (4313), 行) (4139), ピル (3867), arr (3730), 個目 (3613), 頭行 (3125), 365 (2445), optional (2323)
『複数ある空白と複数ある数字を分割したい』(素人) AS4から下方向(決まっていない)に数字"1 2 5 12 17"など半角スペースで数字(決まっていない)が並んでいます。 これを AT列に1個目 AU列に2個目 AV列に3個目 AW列に4個目・・・と表記させたいのですがどうしたらいいでしょうか?宜しくお願い致します。 < 使用 Excel:Office365、使用 OS:Windows10 > ---- TEXTSPLIT 関数 https://support.microsoft.com/ja-jp/office/textsplit-%E9%96%A2%E6%95%B0-b1ca414e-4c21-4ca0-b1b7-bdecace8a6e7 で出来ませんか? (tkit) 2022/08/25(木) 17:07 ---- TEXTSPLIT 関数は3月にOffice Insider Program(試験版)に追加された関数で そのリンク先にも >(Office Insider Beta のみ) と表記されている。 #早く製品版に追加されろと待っているが。 (ねむねむ) 2022/08/25(木) 17:13 ---- ありがとうございます。 OFFICE365でなくHome and Business2016でした。大変失礼しました。 (素人) 2022/08/25(木) 17:21 ---- Sub Sample() Dim var As Variant Dim motoRow As Long Dim sakiRow As Long Dim i As Long, j As Long motoRow = 1 'データ先頭行 sakiRow = 1 '貼り付け先頭行 For i = motoRow To Cells(Rows.Count, "AS").End(xlUp).Row 'データ先頭行からAS列最終行までループ var = Split(Cells(i, "AS").Value) 'AS列の値を半角スペース区切りで分割 For j = 0 To UBound(var) '分割分だけループ Cells(sakiRow, "AT").Offset(, j).Value = var(j) '貼り付け先頭行から順にAT列から右方向に貼り付け Next sakiRow = sakiRow + 1 '貼り付け先の行を1加算 Next End Sub 練習課題のつもりでマクロを作成してみました。 ワークシートを指定していないのでアクティブシート上で動作します。 (下手の横好き) 2022/08/25(木) 17:55 ---- > #早く製品版に追加されろと待っているが。 あれー、私はInsider Programに参加していませんが、 最近、普通に使える様になりましたけども。 バージョン2207(ビルド15427.20210 クイック実行)となっています。 最近の回答で、としさんもVSTACKが使えた模様です。まさか彼もInsider? [[20220824151051]] 『複数のシートをまとめたい』(とし) (半平太) 2022/08/25(木) 18:10 ---- 365の新関数、羨ましい限りです。当社は2週間前に2021導入したばかりで、利益のあった年度に「ソフトのまとめ買い」 をするのでサブスクリプションの365導入の見込みはないです。 2007からのバージョンアップなので、新関数やスピルの便利さに驚愕してます。 今のペースだと「TEXTSPLIT」が使えるのは15年後の予定。という訳で2021の人向けに自作してみました。 スピルが使えないバージョンでは「配列数式」でなら利用できると思います。 365のTEXTSPLITと同じ使い方ですが、一部異なる点はコメント読んでください。 バグがあったらスミマセン。自分はずっと、これを使うので、バグがあったら指摘してもらえたらうれしいです。 '365構文 =TEXTSPLIT(text,col_delimiter,[row_delimiter],[ignore_empty], [match_mode], [pad_with]) '2021スピル対応、365では可能なdelimiterの配列指定は未対応,365の第5引数以降[match_mode], [pad_with]は未対応 Public Function TEXTSPLIT(text$, Optional col_delimiter, Optional row_delimiter, Optional ignore_empty As Boolean = False) Dim ret Select Case True Case (Not IsMissing(col_delimiter)) And (Not IsMissing(row_delimiter)) Dim rTmp, cTmp, maxColumn&, r&, c& rTmp = Split(text, row_delimiter) If ignore_empty Then Call RemoveEmpty(rTmp) For r = 0 To UBound(rTmp) cTmp = Split(rTmp(r), col_delimiter) If ignore_empty Then Call RemoveEmpty(cTmp) maxColumn = WorksheetFunction.Max(maxColumn, UBound(cTmp)) Next ReDim ret(0 To UBound(rTmp), 0 To maxColumn) For r = 0 To UBound(rTmp) cTmp = Split(rTmp(r), col_delimiter) If ignore_empty Then Call RemoveEmpty(cTmp) For c = 0 To maxColumn If c <= UBound(cTmp) Then ret(r, c) = cTmp(c) Else ret(r, c) = CVErr(xlErrNA) End If Next Next Case Not IsMissing(row_delimiter) rTmp = Split(text, row_delimiter) If ignore_empty Then Call RemoveEmpty(rTmp) ret = WorksheetFunction.Transpose(rTmp) Case Not IsMissing(col_delimiter) cTmp = Split(text, col_delimiter) If ignore_empty Then Call RemoveEmpty(cTmp) ret = cTmp Case Else ret = CVErr(xlErrNA) End Select TEXTSPLIT = ret End Function '配列からEmptyと空文字列("")を削除する破壊的メソッド,0Baseで返却 Private Sub RemoveEmpty(arr As Variant) Dim i&, col As New Collection For i = LBound(arr) To UBound(arr) If Not IsEmpty(arr(i)) Then If Len(arr(i)) > 0 Then col.Add arr(i) End If Next Erase arr If col.Count > 0 Then ReDim arr(0 To col.Count - 1) For i = 1 To col.Count arr(i - 1) = col(i) Next End If End Sub (まる) 2022/08/25(木) 18:51 ---- あ、いきなりミスを発見。 変数「rTmp」「cTmp」はTEXTSPLIT関数の先頭で宣言する。 (まる) 2022/08/25(木) 19:02 ---- 半平太さん、あれっと思って今確認したが私も バージョン2207(ビルド15427.20210 クイック実行) でTEXTSPLITは#NAME?に、念のためOffice更新プログラムの今すぐ更新を行って バージョン2208(ビルド15601.20064 クイック実行) になったが変わらず#NAME?という状況。 何の条件があるのだろうか? (ねむねむ) 2022/08/25(木) 19:45 ---- ねむねむさんへ そうでしたか、詳しい事は分かりません。 出来る人と 出来ない人の状況を報告して頂くといいんでしょうが、 ちょっと脇道なので、この問題が解決してからにした方がよさそうな気がします。 (半平太) 2022/08/25(木) 20:46 ---- Office 365 ProPlus でないと動作しないとのことです。 Office TANAKA の TEXTSPLIT関数の解説より 「ここで解説する TEXTSPLIT関数 は、ProPlusに追加された関数です。 Excel 2016/2019/2021では使用できませんのでご注意ください。」 Home and Business2016 とのことですので当然TEXTSPLIT関数は使用できませんよね。 (閲覧者) 2022/08/25(木) 22:45 ---- Microsoft 365(Office 365)にProPlusはないと思います。 Microsoft 365 のすべてのプランを比較 Microsoft https://www.microsoft.com/ja-jp/microsoft-365/business/compare-all-microsoft-365-business-products-b 永続ライセンス版の Office2021 ProPlus ならあります。 Office TANAKAさんのいう ProPlus はこのことだと思います。 当方は Microsoft 365 Personal ですが、試してみたら TEXTSPLIT関数 は使えました。 バージョン2207(ビルド15427.20210クイック実行)でした。 (hatena) 2022/08/26(金) 00:48 ---- 関数での場合。 AT4セルに =IFERROR(TRIM(MID(SUBSTITUTE($AS4," ",REPT(" ",100)),COLUMN(A1)*100-99,100))*1,"") と入力して右及び下へフィルコピーではどうだろうか? なおにき出した数値が文字列でも構わなければ =IFERROR(TRIM(MID(SUBSTITUTE($AS4," ",REPT(" ",100)),COLUMN(A1)*100-99,100)),"") でも。 (ねむねむ) 2022/08/26(金) 09:08 ---- 手動の区切り位置機能ではダメなんですかね?表示先を指定して。 根本的に勘違いしてたらすみません。 ちなみに私はMicrosoft 365 Apps for businessのバージョン2207(ビルド15427.20210 クイック実行)で TEXTSPLIT使えます。 (コナミ) 2022/08/26(金) 09:38 ---- 皆様ありがとうございます。色々なバージョンによって使い方があることを知り勉強になりました。 まずは初歩的なもので区切り位置を使用してみて思った通りにできました。 これからまた勉強していきます。 (素人) 2022/08/26(金) 17:26 ...
https://www.excel.studio-kazu.jp/wiki/kazuwiki/202208/20220825164445.txt - [detail] - similar
PREV NEXT
Powered by Hyper Estraier 1.4.13, with 97056 documents and 608292 words.

訪問者:カウンタValid HTML 4.01 Transitional