Live-Forum - Die aktuellen Beiträge
Datum
Titel
28.03.2024 21:12:36
28.03.2024 18:31:49
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

Variable übergeben

Variable übergeben
14.11.2015 18:27:22
Reimund
Hallo Cracks,
habe wieder mal meinem engen VBA Horizont erreicht.
Habe alles versucht die Variable MyRow ins Modul zu übernehmen.
Ist immer leer. Was muss ich a noch definieren. Hab´s mit Public usw versucht. Nix.
Jetzt schon meinen Kotau für die Antwort.
Reimund

Code Tabellenblatt "Liste"

Sub Worksheet_Change(ByVal Target As Excel.Range)
If Target.Column = 1 Then
myRow = Target.Row
End If
Call Emailsenden
End Sub

Makro Modul "Emailsenden"

Sub Emailsenden()
'Selektierten Satz aus Blatt Liste in Blatt Senden kopieren
Sheets("Senden").Select
Cells.Select ' alles löschen
Selection.Delete Shift:=xlUp
Sheets("Liste").Select
Range("A" & MyRow & ":Z" & MyRow).Select
Application.CutCopyMode = False
Selection.Copy
Sheets("Senden").Select
Range("B1").Select
Selection.PasteSpecial Paste:=xlPasteAll, Operation:=xlNone, SkipBlanks:= _
False, Transpose:=True
End Sub

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

Betreff
Datum
Anwender
Anzeige
AW: Variable übergeben
14.11.2015 18:31:18
Raphael
Hallo Reimund,
du must die Variable im Modul ganz oben (ausserhalb der Sub) Public definieren, dann klappt es

Public myRow as Long
Sub ....
end sub

AW: Variable übergeben
14.11.2015 18:33:19
Tino
Hallo,
man kann nicht erkennen wo myRow deklariert ist!
Sub Worksheet_Change(ByVal Target As Excel.Range)
If Target.Column = 1 Then
myRow = Target.Row
End If
Call Emailsenden(myRow)
End Sub
Sub Emailsenden(myRow&)
'Selektierten Satz aus Blatt Liste in Blatt Senden kopieren
Sheets("Senden").Select
Cells.Select ' alles löschen
Selection.Delete Shift:=xlUp
Sheets("Liste").Select
Range("A" & MyRow & ":Z" & MyRow).Select
Application.CutCopyMode = False
Selection.Copy
Sheets("Senden").Select
Range("B1").Select
Selection.PasteSpecial Paste:=xlPasteAll, Operation:=xlNone, SkipBlanks:= _
False, Transpose:=True
End Sub
Zu Select usw...
http://www.online-excel.de/excel/singsel_vba.php?f=61
Gruß Tino

Anzeige
AW: Variable übergeben
14.11.2015 18:36:16
Sepp
Hallo Reimund,
übergib die Zeile als Parameter.
' **********************************************************************
' Modul: Tabelle2 Typ: Element der Mappe(Sheet, Workbook, ...)
' **********************************************************************

Option Explicit

Sub Worksheet_Change(ByVal Target As Excel.Range)
If Target.Column = 1 Then Call Emailsenden(Target.Row)
End Sub

' **********************************************************************
' Modul: Modul2 Typ: Allgemeines Modul
' **********************************************************************

Option Explicit

Sub Emailsenden(Zeile As Long)
Sheets("Senden").Cells.Delete Shift:=xlUp
With Sheets("Liste")
  .Range("A" & Zeile & ":Z" & Zeile).Copy
  Sheets("Senden").Range("B1").PasteSpecial Paste:=xlPasteAll, _
    Operation:=xlNone, SkipBlanks:=False, Transpose:=True
End With
Application.CutCopyMode = False
End Sub

Gruß Sepp

Anzeige
AW: Variable übergeben
15.11.2015 18:16:10
Reimund
Hallo ihr 3,
vielen Dank für die Antworten.
Mit "Public myRow as Long" hatte ich es schon probiert. Geht nicht.
Und auch das von Sepp habe ich übernommen. Wenn ich mir dann die Variable in Msgbox anzeigen lasse ist sie im Tabellencode richtig und in dem Modul dann 0.
Ich glaub´ ich geh´ in die Klappse.
Trotzdem, nochmals Dank.
Reimund

AW: Variable übergeben
15.11.2015 21:15:37
Tino
Hallo,
ist Public myRow as Long in einem normalen Modul deklariert?
Gruß Tino

AW: Variable übergeben
16.11.2015 11:52:19
Reimund
Hallo Timo,
sehr suspekt.
War im Modul 4, oben über der Prozedur.
Habe nichts weiter geändert, aber plötzlich geht es.
Ich weiß nicht warum, aber bin wohl ein ADAU ( Allerdümmster anzunehmender User)
Vielen Dank nochmals
Gruß aus Spreeathen
Reimund
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige