Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1160to1164
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Kompliziertes Problem mit Excel-Makro

Kompliziertes Problem mit Excel-Makro
Luca
Hallo Zusammen
Ich hab ein ziemlich kompliziertes Problem.
Also ich probiere es so gut wie möglich zu erklären.
Wir haben ein Programm das über Access läuft, dieses geht auf eine Datenbank und sucht sicht nach gewissen gegebenen Parametern Personen zusammen, und gibt diese dann in einem Excelsheet aus.
Die Spaltenüberschriften werden in einem neuen Exceldokument direkt in der ersten Zeile generiert.
Jetzt sind meine Mitarbeiter mit der Bitte an mich herangetreten, dass sobald das Dokument aufgeht und die Daten da sind, soll ein Fenster aufgehn und nach einem Titel für das Dokument fragen. Nach bestätigen auf OK wird eine Zeile eingefügt, die Zellen verbunden, fett gestellt und die Schrift vergrösst, sowie den gewünschten Titel eingefügt.
Da bei jedem Aufruf dieser Routine wieder ein neues Excelsheet generiert wird, kann ich den VBA-Code nicht da reinschreiben, es löscht ihn jedes mal wieder.
Also hab ich mir gedacht, machen wir doch ein Makro/Addin daraus und packen es irgendwo im Excel mit einem speziellen Button hin.
Aber da hab ich gemerkt das es in Excel keine Normal.dot gibt wie im Word.
Hat jmd. von euch eine Idee wie ich das trotzdem realisieren kann? Bin am Ende mit meinen Nerven^^ Hab zwar schon im Google gesucht wie es gehen könnte(mit addin-knopf etcetcetc) aber nichts brauchbares gefunden.
Der Code für das erstellen einer neuen Zeile etc. konnte ich ohne grosse Probleme generieren:
'Zelle einfügen
Worksheets("EWK Export Konfession").Rows(1).Insert
'Zellen zusammenführen
Range("A1:O1").Select
Selection.Merge
With Selection
.Merge
.HorizontalAlignment = xlCenter
End With
Range("A1:O1").Select
With Selection.Font
.Name = "Arial"
.Size = 14
.Strikethrough = False
.Superscript = False
.Subscript = False
.OutlineFont = False
.Shadow = False
.Underline = xlUnderlineStyleNone
.ColorIndex = xlAutomatic
End With
Range("A1").Value = TextBox1
End
Dieser würde in einem Addin auch funktionieren oder?
Freundliche Grüsse
Luca Summermatter

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Benutzer
Anzeige
AW: Personl.xls
16.06.2010 16:00:05
Luca
Ok danke schon mal viel mal Boris.
Das funktioniert soweit, es ist allerdings ein neues Problem aufgetaucht.
Ich erstelle ja mit > eine neue Zeile.
Jetzt heissen aber die Exceldokumente nicht immer gleich(EWK Export Konfession), also wird es mir immer einen Fehler ausgeben.
Kann ich diesen Parameter so einstellen, das er immer in der aktuellen Tabelle eine Zeile einfügt?
Nacher sollte meiner Meinung nach alles korrekt funktionieren!
MFG Luca
Anzeige
AW: Personl.xls
16.06.2010 16:02:29
Luca
Ok danke schon mal viel mal Boris.
Das funktioniert soweit, es ist allerdings ein neues Problem aufgetaucht.
Ich erstelle ja mit > eine neue Zeile.
Jetzt heissen aber die Exceldokumente nicht immer gleich(EWK Export Konfession), also wird es mir immer einen Fehler ausgeben.
Kann ich diesen Parameter so einstellen, das er immer in der aktuellen Tabelle eine Zeile einfügt?
Nacher sollte meiner Meinung nach alles korrekt funktionieren!
MFG Luca
AW: Personl.xls
16.06.2010 16:04:21
Luca
sorry anscheinend, ist mein code nicht gepostet worden
"Worksheets(EWK Export Konfession).Rows(1).Insert"
das wäre die angesprochene Codezeile
Anzeige
AW: Personl.xls
16.06.2010 16:14:19
Rudi
Hallo,
einfach
Rows(1).insert
Gruß
Rudi
AW: Personl.xls
17.06.2010 13:02:41
Klaus
Hi,
versuche in Excel auf "select" zu verzichten, es ist in 99,9% aller Fälle überflüssig.
Verbundene Zellen sind ebenfalls 99,9% überflüssig und können durch horizontale Ausrichtung ersetzt werden.
Anbei mal der überarbeitete Code.
Sub MakeHeadline()
'Zelle einfügen
Rows(1).Insert
'Referenzierung über WITH-Rahmen
With Range("A1:O1")
'Über Auswahl zentrieren - sieht genauso aus, ist aber excel-freundlicher als verbundene  _
Zellen
.HorizontalAlignment = xlCenterAcrossSelection
With .Font
.Name = "Arial"
.Size = 14
'unnötiges entfernt
End With
End With
'das funktioniert SO bei mir nicht - aber ich geh mal davon aus, dass die Textbox-variable  _
vorher übergeben wurde
Range("A1").Value = TextBox1
End Sub

Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige