6

私は興味深いジレンマを抱えており、これが可能かどうか誰かが知っているかどうか疑問に思っていました. Java を使用して .csv ファイルを作成しています。各行のコンマ区切りのエントリの 1 つが URL です。

例:

item1、item2、item3、http: //myurl.com

もともと Excel で .csv ファイルを読み込んだときに、URL のテキストだけが読み込まれ、クリック可能になりませんでした。ファイルの作成中にエントリをこの文字列で囲むだけで、これを解決できました。

=HYPERLINK(" http://myurl.com ")

Excel が読み込まれると、リンクをクリックできるようになり、マウス ポインターが手のアイコンに変わります。唯一の問題は、セルをホバリングせずに見ているだけの場合、白い背景に黒いテキストのように見えることです。通常、リンクは青色で、クリック可能であることを示す下線が付いています。このビジュアルキューが欲しいのですが、上記の関数をある種のセルフォーマット関数などで変更するだけでそれを行う方法があるかどうかはわかりません。

はい、条件付き書式とは何か、そしてそれを Excel のセルに適用する方法を知っています。ただし、ファイルがロードされたときに機能する必要があるだけなので、これは機能しません。ファイルの内容は常に変化しているため、ユーザーがファイルをダウンロードすると、ファイルは常に新しく作成されます。どんなアイデアでも大歓迎です。

4

3 に答える 3

1

.csv ファイルをダブルクリックして入力したハイパーリンクが「コールド」(クリック不可) である理由は、入力されたテキストから「ホット」ハイパーリンクを作成する UI の部分がバイパスされているためです。.csv に =HYPERLINK() 関数ではなく未加工の URL がある場合は、次のコマンドを実行してホットにすることができます。

Sub HyperIgniter()
    Dim r As Range
    For Each r In ActiveSheet.UsedRange
        If Left(r.Text, 4) = "http" Then
            r.Select
            Application.SendKeys "{F2}"
            Application.SendKeys "{ENTER}"
            DoEvents
        End If
    Next r
End Sub

これは、各ハイパーリンクを再入力することと同じで、ハイパーリンクが「ホット」になり、通常の形式になります。

于 2013-06-20T03:14:57.297 に答える
1

これは絶対に実行できますが、予想よりも複雑になる可能性があります。

最初に、この投稿に記載されている手順に従って、すべての新しいワークブックで使用できる新しいカスタム数値形式を作成する必要があります。顧客も同様です。

カスタムリストへのセルフォーマットオプションの追加

リストを引用したいと思いますが、HansV の優れたソリューションを称賛したくはありません。

追加するオプションは「[青]一般」です

これで、CSV ファイルに次の例のような文字列が保存されます: "=text(hyperlink("" http://www.google.com ""),""[blue]General"")"

これで、新しい形式 (フォントの色を制御する) を適用できます。google.com を自分の URL に置き換えるだけです。トリッキーな書式設定 CSV の力の産物として多くの引用符があることに気付くでしょう。そのため、必要な場所に引用符が追加され、必要なコンマ (TEXT 関数の場合) が 2 つのセルに分割されません。

于 2014-12-14T05:18:12.827 に答える