OKWAVEのAI「あい」が美容・健康の悩みに最適な回答をご提案!
-PR-
解決
済み

リンクしてきたデータの文字列を折り返すには…???

  • すぐに回答を!
  • 質問No.104176
  • 閲覧数154
  • ありがとう数3
  • 気になる数0
  • 回答数4
  • コメント数0

お礼率 67% (35/52)

リンクして引っ張ってきたデータを、
何文字目で改行するか,その都度決めることはできますか?
リンクしてくるデータが、毎回同じ文字数目で改行したいわけではなくて、
今回は8文字目と16文字目で折り返したい…
今回は9文字目と20文字目で折り返したい…など。
ついでに!!!
折り返した文字列の頭に1文字空白を挿入したいのですが。
そんな贅沢でワガママなことはできますか?
もしかして、申し上げている意味自体が不明でしょうか?
通報する
  • 回答数4
  • 気になる
    質問をブックマークします。
    マイページでまとめて確認できます。

質問者が選んだベストアンサー

  • 回答No.4
レベル13

ベストアンサー率 68% (791/1163)

質問では、規則性はなさそうだし、折り返し数も2個以上かもしれないということで、指定した文字数で折り返すユーザー定義関数を作りました。手順も書きましたのでチャレンジしてみて下さい。最初はみんな超初心者です。

折り返し箇所の指定は任意の個数可能です。長くなるので、9個目で改行、6個目で改行のように指定を昇順に指定しない場合は対応していません。

扱うのは全角文字の文章と想像しています。(半角でもOKですが)『ついでに』の先頭の空白は全角空白にしています。

使い方ですが、今、Bシートの該当セルは =VLOOKUP(・・・・・) となっていると思いますが、これを
=Orikaeshi(VLOOKUP(・・・・・),8,16) や
=Orikaeshi(VLOOKUP(・・・・・),9,20,26,32) のようにします。
また、該当セルの書式設定の配置は折り返して全体を表示するにチェックを入れておきます。うまくいけばいいえすが。

ツール→マクロ→Visual Basic Editor でVBE画面に移り、
挿入→標準モジュール で標準モジュールを挿入しそこに下記コードを貼り付けて下さい。

'指定文字数で折り返し。(先頭に全角空白を挿入)
Public Function Orikaeshi(Bunsyo As String, ParamArray aryNagasa() As Variant)
Dim L As Integer 'カウンタ
Dim mojisuu As Integer '1行文字数
Dim wkBunsyo As String '処理用変数

Bunsyo = " " & Bunsyo
For L = 0 To UBound(aryNagasa())
If L = 0 Then
mojisuu = aryNagasa(L)
Else
mojisuu = aryNagasa(L) - aryNagasa(L - 1)
End If
wkBunsyo = wkBunsyo & Left(Bunsyo, mojisuu) & vbLf
Bunsyo = Mid(Bunsyo, mojisuu + 1)
Next
wkBunsyo = wkBunsyo & Bunsyo
Orikaeshi = wkBunsyo
End Function
お礼コメント
iillyy

お礼率 67% (35/52)

締め切ってしまってから気がつきました…。
改行ごとの頭に空白を入れたかったのでした。
説明不足で申し訳ありませんでした。
でも、他はすばらしくうまく行きました。

「改行ごとに頭に空白を入れるには?」として、新たに質問をしておきますので、
また機会がありましたらお世話してください。
ありがとうございました。
投稿日時 - 2001-08-05 14:53:47
-PR-
-PR-

その他の回答 (全3件)

  • 回答No.1
レベル12

ベストアンサー率 65% (276/422)

どもども田吾作7です。 エクセルの話ですよね? たぶん[A1]のセルに"abcdefg"と入っていて、[B1]のセルには数式[=A1]みたいになっていて、[B1]のセル内容を、任意の位置で改行して表示したいという意味ですか? もうちょっと情報が・・・ ...続きを読む
どもども田吾作7です。

エクセルの話ですよね?

たぶん[A1]のセルに"abcdefg"と入っていて、[B1]のセルには数式[=A1]みたいになっていて、[B1]のセル内容を、任意の位置で改行して表示したいという意味ですか?

もうちょっと情報が・・・
補足コメント
iillyy

お礼率 67% (35/52)

エクセルです。
Aシートに情報が入っていて、BシートにVlookupでデータをリンクさせています。
A1セルに”abcdefg”からはアナタ様のご想像通りです。
もしかして、まだ意味不明でしょうか…。

本当にド素人なので、誠にお手数をおかけしますが、
再度お返事をいただけませんでしょうか。
投稿日時 - 2001-07-14 12:13:24


  • 回答No.2
レベル12

ベストアンサー率 65% (276/422)

どもども田吾作7です。 リンクしたデータは基本的に同じデータ値を持つために、改行を任意でというのはできません。 [A1]の内容が1999/7/14 [B1]に数式=A1だったとします。その[B1]の表示を1999年7月14日にするのは可能です。これは同じデータ値なのですが、表示形式を加工することで実現可能です。 しかし、行いたいことは改行ですよね?改行は"あ"とか&quo ...続きを読む
どもども田吾作7です。

リンクしたデータは基本的に同じデータ値を持つために、改行を任意でというのはできません。
[A1]の内容が1999/7/14 [B1]に数式=A1だったとします。その[B1]の表示を1999年7月14日にするのは可能です。これは同じデータ値なのですが、表示形式を加工することで実現可能です。

しかし、行いたいことは改行ですよね?改行は"あ"とか"E"とかと同様に"(改行コード")という文字がデータに必要になります。
[A1]の内容"abcdefg"を[B1]の内容"abcd(改行コード)efg"と変更するわけですから、データ値が変わることになります。ですのでVLOOKUP関数だけではムリだと思います。

改行するのに規則性はありますか?
それと今日は午後3時まで予定があるので、以後すぐの回答は出来ませんので、、、
_(._.)_

でわでわ
お礼コメント
iillyy

お礼率 67% (35/52)

ご親切にありがとうございます。
規則性とは…???

説明もできなくて、誠に申し訳ありません。

もうお分かりのように、私はパソコンに関して、超初心者なのです。
それでも教えていただけますか?
投稿日時 - 2001-07-14 12:44:40
  • 回答No.3
レベル12

ベストアンサー率 65% (276/422)

どもども田吾作7です。 急いで書きます。 改行するからには、何らかの理由があるから改行するんですよね? たとえばVlookUpでもってくるデータが文章で、「本日は晴天なり。だけど明日は雨。」というデータを持ってくるとします。 そのデータが表示では「本日は晴天なり。だ(改行)けど明日は雨。」とならないように、読点の次の位置から改行を行うという規則性を持たせたら、「本日は晴天なり。(改行) ...続きを読む
どもども田吾作7です。

急いで書きます。

改行するからには、何らかの理由があるから改行するんですよね?

たとえばVlookUpでもってくるデータが文章で、「本日は晴天なり。だけど明日は雨。」というデータを持ってくるとします。
そのデータが表示では「本日は晴天なり。だ(改行)けど明日は雨。」とならないように、読点の次の位置から改行を行うという規則性を持たせたら、「本日は晴天なり。(改行)だけど明日は雨。」というようになります。


あっΣ( ̄ロ ̄lll) 待ち合わせの時間が・・・急がねば・・・

では出かけます。
このQ&Aで解決しましたか?
関連するQ&A
-PR-
-PR-
こんな書き方もあるよ!この情報は知ってる?あなたの知識を教えて!
このQ&Aにはまだコメントがありません。
あなたの思ったこと、知っていることをここにコメントしてみましょう。

その他の関連するQ&A、テーマをキーワードで探す

キーワードでQ&A、テーマを検索する
-PR-
-PR-
-PR-

特集


いま みんなが気になるQ&A

関連するQ&A

-PR-

ピックアップ

-PR-
ページ先頭へ