HERBERS Excel-Forum - das Archiv
Mehr Argumente
Peter

Hei Leute
ich habe eine Tabelle mit vielen Namen. Wenn ich in eine bestimmte Zeile gehe bekomme ich den Namen in einer TextBox angezeigt. Leider kann ich nur mit dem Code 26 Arrgumente eingeben. Wie kann ich den Code umstellen das ich mehr Arrgumente eingeben kann? Bitte um hilfe.
Peter

AW: Mehr Argumente - hier der Code
Peter


Private Sub Worksheet_SelectionChange(ByVal Target As Range)
With TextBox1
If Intersect(Target, Range("I7:AM7, I8:AM8, I9:AM9, I10:AM10, I11:AM11, I12:AM12, I13:AM13, I14: _
AM14, I15:AM15, I16:AM16, I17:AM17, I18:AM18, I19:AM19, I20:AM20, I21:AM21, I22:AM22, I23:AM23, I24:AM24, I25:AM25, I26:AM26, I27:AM27, I28:AM28, I29:AM29, I30:AM30, I31:AM31, I32:AM32 ")) Is Nothing Then
Else
.Visible = True
.Top = Target.Offset(3, 0).Top
.left = Target.left
.Text = Cells(Target.Row, 2)
End If
End With
End Sub

AW: Mehr Argumente - hier der Code
Hajo_Zi

Hallo Peter,
benutze Union anlaog dem Beispiel
'Set RaBereich = Union(Range("C11:AG11 , C13:AG13, C15:AG15 , C17:AG17 , C19:AG19 , C21:AG21 , C27:AE27 , C29:AE29, C31:AE31, C33:AE33"), _
' Range("C35:AE35, C37:AE37, C43:AG43, C45:AG45 , C47:AG47 , C49:AG49 ,C51:AG51 , C53:AG53 , C59:AF59 , C61:AF61 , C63:AF63 , C65:AF65"), _
' Range("C67:AF67 , C69:AF69 , C75:AG75 , C77:AG77 , C79:AG79 , C81:AG81 , C83:AG83 , C85:AG85 ,C91:AF91 , C93:AF93 , C95:AF95 , C97:AF97"), _
' Range("C99:AF99 , C101:AF101, C107:AG107 , C109:AG109 , C111:AG111 , C113:AG113 , C115:AG115 , C117:AG117 , C123:AG123 , C125:AG125"), _
' Range("C127:AG127 , C129:AG129 , C131:AG131 , C133:AG133 , C139:AF139 , C141:AF141 , C143:AF143 , C145:AF145 , C147:AF147 , C149:AF149"), _
' Range("C155:AG155, C157:AG157 , C159:AG159 , C161:AG161 , C163:AG163 , C165:AG165 , C171:AF171 , C173:AF173 , C175:AF175 , C177:AF177 "), _
' Range("C179:AF179 , C181:AF181, C187:AG187 , C189:AG189 , C191:AG191 , C193:AG193 , C195:AG195 , C197:AG197"))

AW: Mehr Argumente - hier der Code
Peter

Hallo Hajo
wie ändere ich das ganze das der Code klappt. Hab es versucht klappt aber nicht. Kannst du mir ein Beispiel mit dem ganzen Code geben. Das wäre net. Bin nämlich net so gut darin.
Peter
If Intersect(Target, Range("I7:AM32")) Is Nothing
Matthias

Hallo
oder so
Option Explicit
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Not Intersect(Target, Range("I7:AM32")) Is Nothing Then
With TextBox1
.Visible = True
.Top = Target.Offset(3, 0).Top
.Left = Target.Left
.Text = Cells(Target.Row, 2)
End With
End If
End Sub
oder so
Option Explicit
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
With TextBox1
If Not Intersect(Target, Range("I7:AM32")) Is Nothing Then
.Visible = True
.Top = Target.Offset(3, 0).Top
.Left = Target.Left
.Text = Cells(Target.Row, 2)
Else
.Visible = False
End If
End With
End Sub

Gruß Matthias
hier mal mit 2 Bereichen ( mit Union() )
Matthias
AW: hier mal mit 2 Bereichen ( mit Union() )
Peter

Hallo Matthias danke für deine hilfe. So klappt es prima.
Peter