Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1456to1460
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

Einfügen von Spalten in Tabelle

Einfügen von Spalten in Tabelle
12.11.2015 15:20:55
Spalten
Hallo - ich bin neu hier und habe eine Frage.
Ich habe eine Excel-Datei, die mehrere Makros enthält.
Zum Beispiel werden beim Öffnen automatisch Zellbereiche farbig markiert, wenn in Spalte D, E und F gewisse Bedingungen erfüllt sind. Für das Jahr 2016 soll diese Datei wieder verwendet werden, allerdings muss ich zwischen A und B eine Spalte einfügen.
Das ist jedoch nicht das einzige Makro, welches ich verwende - es gibt noch ein paar mehr. Und bevor ich mir die Arbeit mache, Makro für Makro durchzugehen und die Spalten manuell anzupassen, wollte ich hier nachfragen:
Kann ich irgendwie alle Makros "automatisch" anpassen? Dass also überall dort wo jetzt Spalte F steht, die Spalte G wird?
Danke für eure Hilfe.

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
machbar aber schwierig ...
12.11.2015 15:52:04
Tino
Hallo,
geht schon, aber dies ist sehr schwammig und fehleranfällig!
1. der Zugriff auf VBA-Projekte muss zugelassen werden!
2. für Spalte D, E, F gibt es unterschiedliche Schreibweisen (Range, Columns ...)
3. nicht immer wird eine Spalte fest im Code hinterlegt, oft wird diese durch Variablen ermittelt
oder mit offset usw... gearbeitet.
Hier mal ein Beispiel:
Kommt in ein separates Modul, Name des Moduls im Code anpassen! (hier Modul_Code)
Option Explicit
Option Compare Text
Sub Beispiel()
Dim n&, sCode$
With ThisWorkbook.VBProject
For n = 1 To .VBComponents.Count
With .VBComponents(n)
If .Name  "Modul_Code" Then
With .CodeModule
sCode = .Lines(1, .CountOfLines)
'umschreiben -> groß nach klein
sCode = Replace(sCode, "F:F", "H:H")
sCode = Replace(sCode, "E:E", "G:G")
sCode = Replace(sCode, "D:D", "F:F")
.DeleteLines 1, .CountOfLines
.AddFromString sCode
End With
End If
End With
Next n
End With
End Sub
Gruß Tino

Anzeige
Du solltest dir angewöhnen, Makros von ...
12.11.2015 17:41:40
...
…vornherein „pflegeleicht“ zu pgmmieren, Roland,
bspw in dem du BereichsAdressen auf Text-Konstanten (Const adRelBer$ = "…") oder noch besser auf definierte Namen der Datei legst. Letzteres hat den Vorteil, dass sich deren Bezüge automatisch anpassen, wenn bspw Spalten eingefügt wdn.
Unter diesem Gesichtspkt ist es sicher angebracht, wenn du alle deine Makros durchgehst. Dann hast du beim nächsten Mal, das bestimmt irgendwann kommt, keine Arbeit damit.
Gruß, Luc :-?
Besser informiert mit …

Anzeige
AW: Einfügen von Spalten in Tabelle
16.11.2015 09:30:29
Spalten
Vielen Dank für die Hinweise - habe leider noch das Level "VBA bescheiden" :-)

332 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige