- ベストアンサー
(VBA) 字幕の内容が複数行の場合、1行に集約化
現在、字幕翻訳(英語>日本)で字幕ファイル(テキストファイル)を補助ツールで テキストファイル内の特定文字列を他の文字列に置き換える作業を行っています。 その後、置き換え終了後のファイルをEXCELのシートに読み込ませているのですが 補助ツールでの処理をEXCEL(VBA)で処理できないか考えています。 字幕ファイル(SRT形式)は、 通し番号(連番) 字幕の表示時間(タイムコード) 字幕の内容(表示文字列=テキスト情報) 改行文字 '--------------------------------- SRTの例 1 00:05:00,400 --> 00:05:15,300 This is an example of a subtitle. 2 00:05:16,400 --> 00:05:25,300 This is an example of a subtitle - 2nd subtitle. 3 00:05:40,200 --> 00:05:41,0250 This is an example of a subtitle - 3rd subtitle. '----------------------------------- やりたい作業は、以下の作業です。 1)SRTの例の3番目のを見ると「字幕の内容」の部分の最後に改行コード有って 次の行に引き続き「字幕の内容」があります。 つまり、「字幕の内容」が複数行存在している。 この場合は、 文字列の最後の改行コードを半角スペースに置き換えて 1行の「字幕の内容」にコンバートする (1番目や2番目のように1行に) 結果、 This is an example of a subtitle - 3rd subtitle. Sheet1のA列にコンバート前のテキストファイルが読み込み済みであるとして 「字幕の内容」が複数行の部分を1行にするコードを摸索していますが どうも「字幕の内容」部分が複数行かをチェックする方法が思いつきません。 何かアドバイスがあればお願いします。 最終的には、SRTフォーマットで別シートに1行にした「字幕の内容」を書き出すようにしたい。 「字幕の内容」部分が複数行の場合、通常はあっても2行までと思われますが 3行目以降が無いとは言い切れないので2行固定では無い方向でお願いします。
- みんなの回答 (7)
- 専門家の回答
関連するQ&A
- テキストファイルに複数行の文字列追加
自動化する方法はないでしょうか。 テキストファイルは複数で内容もまちまちですが、 特定の文字列が出てくるので、そこに三行ほど同じ内容を追記します。 マクロとかを使うのでしょうか? よろしくお願いします。
- 締切済み
- その他([技術者向] コンピューター)
- 日本語字幕ファイル(smi)をsrtファイルに変換したいのですが、su
日本語字幕ファイル(smi)をsrtファイルに変換したいのですが、subtitle workshopでsmiを読み込ませて、srtファイルで保存すればいいと、聞いたのですが、「読み込ませる」というのは。どういう作業になるのでしょうか? 「ファイルを開く」で開いてみたのですが、「ファイルが壊れているか、サポートされていないファイルです」と出てしまい、前に進みません。 教えて下さい。よろしくお願いいたします。
- ベストアンサー
- その他(ソフトウェア)
- エクセル VBA 同じ内容のセルの行を合わせたい
売上集計表があり、A列に全商品のコードが表示されてます。 毎日の売上商品のデータを商品コード別に数量を入力して同じ内容のセルの行の位置を合わせる作業を毎日行っています。 毎日の売上データはエクセルで集計されたデータを貼り付けて行っています。これをなんとかVBAで処理したいのですが、どうしたらいいのかわかりません。 内容としてはA列に全商品の商品コードが既に入力されています。 月のはじめは、B列とC列に一日の集計データそのまま貼り付けます。 A列の商品コードと同じ商品コードの行に合うまで空白のセルを挿入していきます。 次の日は、D列とE列、その次はF列とG列と右に貼り付けしていきます。 商品コードは約3000件、毎日の集計データ数は約500件です。 どうか教えてください。 完成例) A列 B列 C列 D列 E列 F列 G列 H列 I列 商品コード 10/1分 10/2分 10/3分 10/4分・・・続く 商品コード 数量 商品コード 数量 商品コード数量 CZ1.000 CZ1.000 10 CZ1.000 20 CZ1.005 CZ1.010 15 ←セルの挿入で CZ1.010 CZ1.010 30 CZ1.020 30 下げる作業を CZ1.015 CZ1.030 10 毎日行ってます。 CZ1.020 CZ1.020 11 CZ1.020 20 CZ1.040 40 CZ1.025 CZ1.030 CZ1.030 11 CZ1.030 10 よろしくお願いします。
- ベストアンサー
- Visual Basic
- テキストファイルの内容を1行ずつ大きく表示させたい
テキストファイルの内容を1行分あるいは適当な長さずつ、大きく表示させるフリーソフトを探しています。 次の行の内容を見るためにはキーボードの矢印を使うといった様な操作が希望です。 海外の大学の講義を動画で見る時に使うのが目的です。つまりスクリプトは持っているので、それを字幕のように自分で操作してブラウザの下に出したいのです。 よろしくお願いします。
- ベストアンサー
- フリーウェア・フリーソフト
- エクセルVBA 文字列複数行・列連続連結
エクセルVBA 文字列複数行・列連続連結でお教え下さい A列に基本文字(縦順) B列~F列に複数行データー(文字・時間) 文字結合時に改行 例 A2&B2&改行&A3&C2&改行&A4&D2&改行・・・・・ 次のデーター行 A&B3&改行&A3&C3&改行&A4&D3&改行・・・・・ データーの最終行まで連続で このような複数行あるデーターの連続文字列連結をしたいのですが・・・ 文字列連結後は 1.指定セルに貼り付け 2.クリップボードに貼り付け 3.テキストファイルに保存 よろしくお願い致します
- ベストアンサー
- その他(プログラミング・開発)
- 複数行の文字列を変数として使う方法
Excel2010 VBAを使っています。 ファイルAに AAA BBBB CCCCC DD ・・・ というように50行程度に渡って文字列が書かれています。 この文字列をファイルB(これも同じく文字列が書かれています)と合体させるプログラムを作っています。 このプログラムをほかのPCでも使用したいのですが、 xlsmファイルとともにファイルAも同時にコピーする必要があり不便です。 ファイルAの内容を標準モジュールの中に保存したいのですが どのようにすれば良いでしょうか? dim a(50) a(0) = "AAA" a(1) = "BBBB" a(2) = "CCCCC" a(3) = "DD" ・・・ というように配列として保存しておけば、これができるのですが、 いちいち、ダブルクオテーションマークでくくって 上記のようなコードを書くのが面倒です。 例えば、 a = "AAA BBBB CCCCC DD ・・・" のように複数行に渡る文字列を変数として用いたいのですが このようなことは可能でしょうか?
- 締切済み
- Visual Basic
- .srtの文字化けを修正したい
お世話になります。 ・使用OS Windows11 Home ・バージョン 22H2 メモ帳を立ち上げて字幕を作っていて、 拡張子を.srtに変更して保存をしていました。 .srtの拡張子のまま、内容を加筆・修正・保存を繰り返していたんですが、 先日、誤って削除してしまい、ゴミ箱からも完全に削除してしまいました。 翌日に削除したことに気づき、 MyRecoverというフリーソフトを使用して、 そのファイルを復元したんですが、 開いてみると文字化けしていました。 その.srtファイルを開いて、 ファイル→開く→文字コードをUTF-8に変更→開く 上記をやってみましたがダメでした。 拡張子を.txtに変えてからもやってみましたが、結果は同じでした。 そこで以下の2点を教えていただけるとありがたいです。 1.この文字化けをどうすれば元の文字列(日本語)に戻せるでしょうか 2.削除したファイルを文字化けしないで元に戻せるフリーソフトはあるでしょうか。 あるようでしたら教えてほしいです。 宜しくお願い致します。
- ベストアンサー
- その他(ソフトウェア)
- エクセルの複数行の文字列を…
エクセルに箇条書きにされている文字列を一つのセルにまとめたいのですが簡単な方法はありますか? 状態と致しまして、1カテゴリ 1.A欄に1行の文字列 2.B欄に3行の文字列 3.C欄に5行の文字列 4.D欄に3行の文字列 5.E欄に空欄 6.F欄に3行の文字列 上記内容は例となりますのでこの限りではありません。 この状態でA~Fの欄を1行にしたいのですが? 罫線で区切られカテゴリは複数あります。 内容がばらばらなので行が固定していません。 簡単に出来る方法を教えて下さい。
- 締切済み
- その他([技術者向] コンピューター)
- テキストボックスの内容(複数行)をリストへ
テキストボックスの内容(複数行)をリストボックスへ1行表示にするにはどうすれば良いのでしょうか? replaceにてvbcrlf(改行文字?)を置き換えしようとしても無理でした。 ご教授お願いします。
- ベストアンサー
- Visual Basic
- 字幕ファイルsrtの開き方
Windows7です。 メモ帳のテキスト入力で作成したsrtファイルの開き方お願いします。 (作成方法は字幕内容をテキスト入力後拡張子srtで保存) srt右クリックしても「プログラムから開く」が出てきません。 尚コントロールパネルの「既定のプログラム」の中に拡張子srtありません。
- ベストアンサー
- Windows 7
お礼
ステップ実行する事で原因が判明しました。 ステップ実行でローカルウインドウを観察すると セクションを分ける区切りを認識できないので jmojiに次から次へと文字列を加えているようです。 つまり If IsEmpty(tb(j, 1)) Then を見直す必要があると思い If tb(j, 1) = "" Then に変更するとエラー無く上手く処理できました。 読み込むテキストファイルによるのか? 読み込んだ後の区切り記号の選定が難しいです。 テキストエディターから文字列群をA列にコピペする場合と FileSystemObjectオブゼクトでファイルを読み込む場合とでは 区切り文字が違うようです。