HOME HELP 新規作成 新着記事 ツリー表示 スレッド表示 トピック表示 ファイル一覧 検索 過去ログ

《 桐質問以外の話題は、「のほか掲示板」からどうぞ 》
■ 24時間以内に作成されたスレッドは New で表示されます。
■ 24時間以内に更新されたスレッドは UpDate で表示されます。

記事リスト ( )内の数字はレス数
UpDate加工開始日を求めたい(32) | Nomal文字置換(5) | Nomal(削除)(4) | Nomalタイルを2つ(3) | Nomalレポートで明細末尾に以下余白と表示させたいです(2) | Nomal桐レポートCond関数で(2) | Nomalフォームのコマンドボタンについて(18) | Nomal特定箇所の計算(2) | Nomalエクセル1900基準にしたい(4) | Nomalレポート印刷(5) | Nomal桐レポート若しくは一覧表印刷で作成可能かどうか(3) | NomalDBの接続に失敗しました(2) | Nomal[英単語] を単語単位で検索・絞込する方法(15) | Nomal行制約について(12) | Nomal条件選択だと思うんですが…(2) | Nomalエクセル書き出し(7) | Nomal(削除)(0) | Nomal環境依存文字(5) | Nomalレポート オブジェクトの属性(2) | Nomalフォームの式入力で[名前]と背景色を指定できますか(22) | Nomal表番号の謎(15) | Nomal時間型の置換(3) | Nomalアポストロフィ、シングルクォーテーションの「'」(8) | Nomal桐RDSで固まる(1) | Nomalフォーム入力途中でESC(6) | Nomal(削除)(1) | Nomalインボイス対応請求書レポート作成(8) | Nomal文字列への入力方法(4) | Nomal毎月2日から翌月1日までを1ヶ月(2日の日の属する月)とする行集計の方法について(2) | Nomal対象表が更新中またはグループ操作中のためこのコマンドは使用できません(2) | Nomal変数を反映させたい(16) | Nomal右クリックフォーム(1) | Nomalレポートの列集計(件数集計)について(15) | Nomal(削除)(13) | Nomal桐の履歴(2) | Nomal右クリックフォーム(8) | NomalNumLockキー 処理中止にしたい(3) | Nomal∨ や ∧ の変換(2) | Nomalデータ内の指定文字列個数を知りたい(7) | Nomalcmd実行中の左下表示(1) | Nomal超初心者ですみませんが・・・・(12) | Nomal書き出しコマンドについて(2) | Nomalテキスト読み込み(5) | Nomalクリックスライド入力(15) | Nomalxmlファイル読み込みについて(1) | Nomalレポートのヘッダーとフッターの日付が異なる(12) | Nomal文字の置き換え(2) | Nomal値集合の番号とは(7) | Nomal字種制約違反について(4) | Nomal『KU1109:ファイル名の形式が不正です』(23) | Nomal更新を判定出来ますか?(30) | Nomal数値の直前値がおかしくなります(5) | Nomal文字、記号、数字が混在したランダムなパスワードを作る方法(5) | Nomal単純な項目の計(1) | Nomalレポート 表ファイル名の選択(2) | Nomal伝票印刷において(1) | Nomalexcelのexactの代わりになる関数(2) | Nomal一覧表での改行(2) | NomalChatGPT(2) | Nomal文字列から記号のみ取り出ししたい(7) |



■記事リスト / ▼下のスレッド
■13811 / 親記事)  伝票印刷において
□投稿者/ ひで -(2023/06/08(Thu) 10:58:26)
    伝票印刷を行いたいんですが

    行数が固定されてしまいます
    明細のある必要な行数にしたいのですが
    設定の仕方がわかりません

    そういうことは出来ないのでしょうか?

引用返信 [メール受信/OFF]

▽[全レス1件(ResNo.1-1 表示)]
■13815 / ResNo.1)  Re[1]: 伝票印刷において
□投稿者/ 悲しげ -(2023/06/10(Sat) 18:24:30)
    No13811に返信(ひでさんの記事)

    ざっくり言うと
    ・行数固定(所定様式の場合等)  →  伝票RPX
    ・明細のある必要な行数にしたい  →  一覧表RPX
    と考えればよいのではないでしょうか?


引用返信 [メール受信/OFF]

■記事リスト / レス記事表示 → [親記事-1]



■記事リスト / ▼下のスレッド / ▲上のスレッド
■13806 / 親記事)  excelのexactの代わりになる関数
□投稿者/ ベスビアス -(2023/06/06(Tue) 09:49:10)
    桐でexcelのexactの代わりになる関数は何になるでしょうか。
    ヘルプの検索やインターネットの検索で見つけられなかったので
    教えてください。
引用返信 [メール受信/OFF]

▽[全レス2件(ResNo.1-2 表示)]
■13813 / ResNo.1)  Re[1]: excelのexactの代わりになる関数
□投稿者/ 通りすがり -(2023/06/09(Fri) 18:25:58)
    桐では厳密な比較に比較演算子"="を使います
    cf. [A]=[B]

    Excelでは"="だと大文字小文字の違いがあってもTrueを返しちゃうので厳密な比較になりません、それで EXACT([A],[B])とします
引用返信 [メール受信/OFF]
■13814 / ResNo.2)  Re[2]: excelのexactの代わりになる関数
□投稿者/ ベスビアス -(2023/06/10(Sat) 12:58:45)
    No13813に返信(通りすがりさんの記事)
    > 桐では厳密な比較に比較演算子"="を使います
    > cf. [A]=[B]
    >
    > Excelでは"="だと大文字小文字の違いがあってもTrueを返しちゃうので厳密な比較になりません、それで EXACT([A],[B])とします

    ありがとうございました。

    自分がやりたいことは教えていただいた内容でできました。

    エクセルでは、比較にEXACTを使うと習っていて、
    イコールでも比較できるという知識がなかったです。
    こちらも勉強になりました。

引用返信 [メール受信/OFF]

■記事リスト / レス記事表示 → [親記事-2]



■記事リスト / ▼下のスレッド / ▲上のスレッド
■13804 / 親記事)  一覧表での改行
□投稿者/ ひで -(2023/06/02(Fri) 11:42:20)
    表の中の項目内の改行は

    表編集のメニューバーの[ファイル]メニュー→[ファイル属性]を実行するとダイアログボックスが現れます…

    これで、なんとか出来たのですが
    一覧表表印刷するときに
    改行文字を非表示で、改行が行えるようにするには
    どこで設定するのでしょうか…

    教えてくださいますでしょうか
    よろしくお願いします

引用返信 [メール受信/OFF]

▽[全レス2件(ResNo.1-2 表示)]
■13805 / ResNo.1)  Re[1]: 一覧表での改行
□投稿者/ 通りすがり -(2023/06/02(Fri) 17:40:35)
    一覧表印刷の属性→書式→列属性→列属性
    にあるよ
引用返信 [メール受信/OFF]
■13810 / ResNo.2)  Re[2]: 一覧表での改行
□投稿者/ ひで -(2023/06/08(Thu) 10:56:39)
    No13805に返信(通りすがりさんの記事)
    > 一覧表印刷の属性→書式→列属性→列属性
    > にあるよ

    ありがとうございました
    頑張ります
引用返信 [メール受信/OFF]

■記事リスト / レス記事表示 → [親記事-2]



■記事リスト / ▼下のスレッド / ▲上のスレッド
■13797 / 親記事)  ChatGPT
□投稿者/ hiro -(2023/05/28(Sun) 18:44:57)
    最近流行りのChatGPTに一括処理プログラムはこうなりますとか出てくる日はあるでしょうか?w
引用返信 [メール受信/OFF]

▽[全レス2件(ResNo.1-2 表示)]
■13801 / ResNo.1)  Re[1]: ChatGPT
□投稿者/ ななーし -(2023/05/29(Mon) 13:20:08)
    桐をChatGPT君が学習しておりませんので無理だと思います。シェル実行等でVBSを実行して処理する場合等は利用は可能です。
    なお、ChatGPTで「管理工学研究所の桐の一括処理で以下のプログラムを作成してください。「名簿」表を開く。氏名の佐藤を田中に置換する。表を閉じる。」と聞くとPythonのプログラムを作成してくれます。w
引用返信 [メール受信/OFF]
■13803 / ResNo.2)  Re[2]: ChatGPT
□投稿者/ hiro -(2023/05/30(Tue) 15:27:48)
    No13801に返信(ななーしさんの記事)
    ななしーさん、どうもありがとうございます。
    そうなのですね、いずれ桐も出てくるようになると良いですねw
解決済み!
引用返信 [メール受信/OFF]

■記事リスト / レス記事表示 → [親記事-2]



■記事リスト / ▲上のスレッド
■13790 / 親記事)  文字列から記号のみ取り出ししたい
□投稿者/ いぶけん -(2023/05/28(Sun) 07:00:20)
    2023/05/28(Sun) 07:18:29 編集(投稿者)
    2023/05/28(Sun) 07:05:35 編集(投稿者)

    "/123abc*#" のような文字列があったとします
    記号位置と記号文字数はランダムです


    ここから項目計算式で、英数字を除いた"/*#"のみを取り出したいのですが
    スマートな方法が分からずアドバイスを頂きたいです。

    桐10sです


    追記:
    英数字も記号同様ランダムです。
引用返信 [メール受信/OFF]

▽[全レス7件(ResNo.3-7 表示)]
■13793 / ResNo.3)  Re[2]: 文字列から記号のみ取り出ししたい
□投稿者/ いぶけん -(2023/05/28(Sun) 14:25:46)

    > このリクエストは[記号文字だけを残す]という意味なのですか?

    そうです。書き漏らしましたが、
    記号も /*# だけではなく、?$など全ての記号を #部分列 みたいな感じで取り出せないか?ということです。

    先にも書きましたが、その項目の英数字を含む文字数もランダムであり、
    記号の文字数もランダム、記号の文字位置もランダムです。
引用返信 [メール受信/OFF]
■13796 / ResNo.4)  Re[3]: 文字列から記号のみ取り出ししたい
□投稿者/ ONnoji -(2023/05/28(Sun) 17:55:41)
    2023/05/29(Mon) 12:00:01 編集(投稿者)
    2023/05/29(Mon) 10:23:12 編集(投稿者)
    2023/05/29(Mon) 00:31:20 編集(投稿者)

    > 記号も /*# だけではなく、?$など全ての記号を #部分列 みたいな感じで取り出せないか?ということです。

    記号文字が含まれているか否かは #is記号という関数で調べられます。

    なお、この関数は最初に見つかった記号文字が何番目に位置しているという情報を返します。

    しかし、複数個の記号文字が含まれている可能性がありますから、計算式一発!というわけにはいかないですね。

    この場合には、文字列の先頭から末尾まで一文字ずつシフトして調べていく方法がシンプルです。※シンプル・イズ・ベスト

    対象になる文字列の文字数がどんなに多くても、あっという間に実行完了してしまいますので、パフォーマンスを心配する必要はありませんよ。

    ということで、こういうのは関数では出来ないですよ。

    [フォーム+イベント処理]のサンプルを添付しますので参考にしてください。

    なお、添付ファイルは数日を目途に削除しますので、ダウンロードはお早めに願います。

    <参考>

    ■フォームの編集対象表の表定義

    項目番号  項目名      データ型 項目計算式 挿入初期値式
    1     文字列      文字列  
    2     記号文字抽出結果 文字列  

    ■フォームのコマンドボタン

     オブジェクト名: cmd記号文字を抽出
     標題     : 記号文字を抽出

      機能名    機能パラメータリスト
     1 表示
     2 手続き実行  cmd記号文字を抽出Click
     3 なし
     4 なし

    ■イベントン処理の定義

    名札  メイン



    手続き定義開始 cmd記号文字を抽出Click( )
     変数宣言 自動,文字列{ &抽出文字列 }
     変数宣言 自動,整数 { &multiTblNum }

     多重化
     &multiTblNum = #is表

     ジャンプ 行番号 = 先頭
    ┌繰り返し ( .not #eof )

    │┌if ( #is記号( [文字列], 0 ) ) /* if ( #is記号( [文字列], 0 ) <> 0 ) でも同じ */
    ││
    ││ 手続き実行 prc記号文字を抽出( [文字列], &抽出文字列 )
    ││ 行訂正 [記号文字抽出結果] = &抽出文字列
    │└end

    │ ジャンプ 行番号 = 次行
    └繰り返し終了

     終了 表 &multiTblNum

    手続き定義終了

    手続き定義開始 prc記号文字を抽出( 文字列 &string, 参照 文字列 &result )
     変数宣言 自動,文字列{ &chr }
     変数宣言 自動,整数 { &length }
     変数宣言 自動,整数 { &i, &loop, &step = 1 }

     &result = #u
     &length = #文字数( &string )
     &loop  = &length
    ┌繰り返し &i = 1, &loop, &step

    │ &chr = #sstr( &string, &i, 1 )
    │┌if ( #is記号( &chr, 0 ) )
    ││
    ││ &result = &result + &chr
    │└end

    └繰り返し終了

     トレース出力 _&string
     トレース出力 _&result

    手続き定義終了

引用返信 [メール受信/OFF]
■13798 / ResNo.5)  Re[2]: 文字列から記号のみ取り出ししたい
□投稿者/ まさやん -(2023/05/28(Sun) 19:02:50)
    2023/05/28(Sun) 19:17:31 編集(投稿者)
    2023/05/28(Sun) 19:14:08 編集(投稿者)
    2023/05/28(Sun) 19:13:13 編集(投稿者)

    先ほどの式では 

    重複した 記号が 1つしか抽出してくれませんでした
    なので


    &比較式="//123abc*#%/%%",&STR=""
    変数宣言 整数,{&文字位置}


    繰り返し
       条件 (#IS記号(&比較式,0)=0) 繰り返し中止
    if(#IS記号(&比較式,0)>0)
    &文字位置=#IS記号(&比較式,0)
          &置換式=#部分列(&比較式,#IS記号(&比較式,0),1)
    &STR=&STR+&置換式
          &比較式=#部分列(&比較式,&文字位置+1)
    end
    繰り返し終了
                変数書き出し "記号",{&STR},終了状態=&秒

    に変更します

    結果が    //*#%/%%  になりました
    追伸
    if end が要らないかもです。
引用返信 [メール受信/OFF]
■13799 / ResNo.6)  Re[1]: 文字列から記号のみ取り出ししたい
□投稿者/ いぶけん -(2023/05/28(Sun) 19:06:35)
    まさやんさん、ONnojiさん
    ありがとうございました。

    ダウンロードしました。
    自分の望み通りの動作です。
    本当に助かりました!
解決済み!
引用返信 [メール受信/OFF]
■13802 / ResNo.7)  Re[4]: 文字列から記号のみ取り出ししたい
□投稿者/ ONnoji -(2023/05/29(Mon) 14:26:06)
    2023/06/01(Thu) 11:18:21 編集(投稿者)

    ホントの蛇足

    アプローチとしては次の2通り考えられますね。

    ・文字列の先頭から末尾まで一文字ずつシフトして調べていく方法
    ・作業文字列の記号文字の位置を調べていく方法

    ご参考まで。(^^ゞ

     ◇ ◇ ◇ ◇ ◇ ◇ ◇ ◇ ◇ ◇ ◇ ◇

    ■文字列の先頭から末尾まで一文字ずつシフトして調べていく方法

    手続き定義開始 prc記号文字を抽出( 文字列 &string, 参照 文字列 &result )
     変数宣言 自動,文字列{ &chr }
     変数宣言 自動,整数 { &length }
     変数宣言 自動,整数 { &i, &loop, &step = 1 }

     &result = #u
     &length = #文字数( &string )
     &loop  = &lengtht
    ┌繰り返し &i = 1, &loop, &step

    │ &chr = #sstr( &string, &i, 1 )
    │┌if ( #is記号( &chr, 0 ) )
    ││
    ││ &result = &result + &chr
    │└end

    └繰り返し終了

     トレース出力 _&string
     トレース出力 _&result

    手続き定義終了


    ■作業文字列の記号文字の位置を調べていく方法

    手続き定義開始 prc記号文字を抽出2( 文字列 &string, 参照 文字列 &result )
     変数宣言 自動,文字列{ &workString, &chr }
     変数宣言 自動,整数 { &at }

     &workString = &string
     &result   = #u
    ┌繰り返し ( #is記号( &workString, 0 ) )

    │ &at   = #is記号( &workString, 0 )
    │ &chr  = #sstr( &workString, &at, 1 )
    │ &result = &result + &chr

    │ &workString = #sstr( &workString, &at + 1 )

    └繰り返し終了

     トレース出力 _&string
     トレース出力 _&result

    手続き定義終了

引用返信 [メール受信/OFF]

■記事リスト / レス記事表示 → [親記事-7]






1458350

Mode/  Pass/

HOME HELP 新規作成 新着記事 ツリー表示 スレッド表示 トピック表示 ファイル一覧 検索 過去ログ

- Child Tree -
- Antispam Version -