AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Programmieren allgemein EXCEL - Hyperlink auf ein anderes Tabellenblatt
Thema durchsuchen
Ansicht
Themen-Optionen

EXCEL - Hyperlink auf ein anderes Tabellenblatt

Ein Thema von Nimmersatt · begonnen am 2. Jul 2014 · letzter Beitrag vom 4. Jul 2014
Antwort Antwort
Jumpy

Registriert seit: 9. Dez 2010
Ort: Mönchengladbach
1.740 Beiträge
 
Delphi 6 Enterprise
 
#1

AW: EXCEL - Hyperlink auf ein anderes Tabellenblatt

  Alt 3. Jul 2014, 13:52
Kannst du mMn nicht verhindern und hast du auch, wenn du einen Hyperlink von Hand anlegst. Im Gegensatz zu Excel-Zellen und -Formeln die diese Bezüge bei Veränderungen anpassen scheint mir das bei den Hyperlinks fix zu sein.
Ralph
  Mit Zitat antworten Zitat
Nimmersatt

Registriert seit: 14. Feb 2014
86 Beiträge
 
#2

AW: EXCEL - Hyperlink auf ein anderes Tabellenblatt

  Alt 3. Jul 2014, 15:00
Hallo Jympy,

Ich hatte schon vorher die Namen der Tabellenbätter verändert.

Wenn ich dann in EXCEL per Hand ein Hyperlink anlege, dann funktioniert der Hyperlink.
Unter Delphi funktioniert der programmierte Hyperlink nicht.

Ich habe es auch über einen Sheet-Index versucht, bisher hat es nicht funktioniert.
Vielleicht gibt es da einen Weg ?

Ich kann mir nicht vorstellen, das da in Excel für dieses Problem keine Vorkehrungen getroffen wurden.
  Mit Zitat antworten Zitat
Jumpy

Registriert seit: 9. Dez 2010
Ort: Mönchengladbach
1.740 Beiträge
 
Delphi 6 Enterprise
 
#3

AW: EXCEL - Hyperlink auf ein anderes Tabellenblatt

  Alt 4. Jul 2014, 07:48
OK, verstehe was du meinst. Du willst einen Link z.B. auf Sheet 2, dass aber irgendwie heißt und nicht Tabelle2.

Dafür kannst du doch einfach sagen
Delphi-Quellcode:
var HyperlinkTarget : String;
    HyperlinkText : String;
[...]
// für excel.sheets[2].cells[2,2]:
HyperlinkTarget:=excel.sheets[2].name & '!B2'
HyperlinkText:='Hier geht's weiter'

excel.sheets[1].Hyperlinks.Add(excel.sheets[1].cells[1,1],
'',HyperlinkTarget,EmptyParam,HyperlinkText);
Ralph
  Mit Zitat antworten Zitat
Nimmersatt

Registriert seit: 14. Feb 2014
86 Beiträge
 
#4

AW: EXCEL - Hyperlink auf ein anderes Tabellenblatt

  Alt 4. Jul 2014, 13:15
Hallo Jumpy,

Ich habe den Fehler gefunden.
Wenn der Name des Tabellenblattes ein Leerzeichen, ein Minuszeichen oder ein bestimmtes Sonderzeichen enthält, ist eine Adressierung über Delphi nicht möglich. Per Hand in Excel ist das aber möglich.
Alle meine Tabellenblätter hatten irgendwelche Sonderzeichen, wie z.B. die Namen des Tabellenblattes Score-Werte, 1. Variante und genau das hat mich in die Irre geführt.

Aber vielen Dank für deine Hilfe.
  Mit Zitat antworten Zitat
Jumpy

Registriert seit: 9. Dez 2010
Ort: Mönchengladbach
1.740 Beiträge
 
Delphi 6 Enterprise
 
#5

AW: EXCEL - Hyperlink auf ein anderes Tabellenblatt

  Alt 4. Jul 2014, 13:22
Das mit den Leerzeichen zumindest (Sonderzeichen nicht getestet) müsste doch mit Quoted-String gehen:

Obiges Beispiel angepasst, Name des Sheets sei "Willi Bald 123":

Delphi-Quellcode:
var HyperlinkTarget : String;
    HyperlinkText : String;
[...]
// für excel.sheets[2].cells[2,2]:
HyperlinkTarget:=QuotedStr(excel.sheets[2].name)+'!B2'
// oder: HyperlinkTarget:=''''+excel.sheets[2].name+''''+'!B2'
HyperlinkText:='Hier geht's weiter'

excel.sheets[1].Hyperlinks.Add(excel.sheets[1].cells[1,1],
'',HyperlinkTarget,EmptyParam,HyperlinkText);
Ralph
  Mit Zitat antworten Zitat
Nimmersatt

Registriert seit: 14. Feb 2014
86 Beiträge
 
#6

AW: EXCEL - Hyperlink auf ein anderes Tabellenblatt

  Alt 4. Jul 2014, 14:14
Hallo Jumpy,

Bingo !
QuotedStr kannte ich gar nicht.
Das mit den anderen Sonderzeichen funktioniert jetzt auch.
Jetzt sind alle Probleme gelöst.

Danke !
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 23:01 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz