• Privacywetgeving
    Het is bij Helpmij.nl niet toegestaan om persoonsgegevens in een voorbeeld te plaatsen. Alle voorbeelden die persoonsgegevens bevatten zullen zonder opgaaf van reden verwijderd worden. In de vraag zal specifiek vermeld moeten worden dat het om fictieve namen gaat.

Als dan functie

Status
Niet open voor verdere reacties.
Je kan elk bericht dat je geplaatst hebt even aanpassen zodat er codetags staan en het nog een beetje leesbaar is. Het hele probleem zal wel niet zo moeilijk zijn maar is totaal onleesbaar zo.
 
de volgorde wellicht? of mag je niet meerdere kolommen selecteren. Wat is de functie van de codetags op het forum of dat een beveiliging?
Ik leer graag dus als je mij verteld wat ik moet doen en waarom zodat ik het begrijp, doe ik het
 
Laatst bewerkt:
Als je dat zelfs niet ziet wat moet je dan met VBA?
 
Onze codes staan in een venster.
Als je dus die codetags gebruikt zoals je doet in de code komt het vast goed.
 
Ik zal de code maar een beetje aanpassen, ik heb het wel gehad (ik heb ook geen idee of het is wat je wilt, maar dit is de volgorde).
Code:
Private Sub Worksheet_Change(ByVal Target As Range)
If Intersect(Target, Range("H30:H36,J30:K36,AG30:AH36,A30:A36,C30:C36,E30:G36,N30:N36,AB30:AB36,AL30:AM36,Q30:Q36")) Is Nothing And Target.Count > 1 Then Exit Sub
If Target <> "" Then


Application.EnableEvents = False
Select Case Target.Column
Case 1
    If Target = "TRANSACTIE" Then
        Target.Offset(, 2) = "NEWT"
        Target.Offset(, 11) = "NL"
        Target.Offset(, 4) = "7245002Y5RHYB096BK53"
        Target.Offset(, 5) = "yes"
        Target.Offset(, 6) = "7245002Y5RHYB096BK53"
        Target.Offset(, 13) = "false"
        Target.Offset(, 27) = "NL"
        Target.Offset(, 37) = "false"
        Target.Offset(, 38) = "false"
    End If
Case 17
  Target = UCase(Target)
  Target = Left(Target, 4) & "-" & Mid(Target, 5, 2) & "-" & Mid(Target, 7, 3) & Mid(Target, 10, 2) & ":" & Mid(Target, 12, 2) & ":" & Mid(Target, 14, 2) & Right(Target, 1)
Case Else
 Target = Cells(Range("F17:F22").Find(Target.Value).Row, 2)
End Select


Application.EnableEvents = True
End If
End Sub
 
Dit zijn codetags.
Als je nu de dubbele quotes weghaald krijg je.

["code]jouw code hier tussen[/code"]
↓ ↓ ↓
Code:
jouw code hier tussen
 
@HSV, zonder terug te bladeren zal in #45 AND weer OR moeten zijn. (denk ik)

@rcmb, Het is hier geen maakmaarvoormij.nl. Als je zelf geen enkele inspanning kan of wil doen om er maar iets van te begrijpen dan houdt het een keer op. 47 berichten over iets simpels als een Change Event lijkt mij wel voldoende. Het niet kunnen vinden of begrijpen wat codetags zijn lijkt mij ook vrij onwaarschijnlijk. http://www.helpmij.nl/forum/showthread.php/870315-Handleiding-Code-tags-gebruiken-Manual-Code-tags-usage?p=5595087#post5595087
 
Laatst bewerkt:
Ik neem aan dat je het zo bedoeld ander sorry dat ik het niet begrijp.

De code werkt nu iig goed zie ik in mijn sheet, Ik begrijp alleen niet waarom hij in de sheet ipv false onwaar schrijft Kolom N

Code:
Private Sub Worksheet_Change(ByVal Target As Range)
If Intersect(Target, Range("H30:H36,J30:K36,AG30:AH36,A30:A36,C30:C36,E30:G36,N30:N36,AB30:AB36,AL30:AM36,Q30:Q36")) Is Nothing And Target.Count > 1 Then Exit Sub
If Target <> "" Then


Application.EnableEvents = False
Select Case Target.Column
Case 1
    If Target = "TRANSACTIE" Then
        Target.Offset(, 2) = "NEWT"
        Target.Offset(, 11) = "NL"
        Target.Offset(, 4) = "7245002Y5RHYB096BK53"
        Target.Offset(, 5) = "yes"
        Target.Offset(, 6) = "7245002Y5RHYB096BK53"
        Target.Offset(, 13) = "false"
        Target.Offset(, 27) = "NL"
        Target.Offset(, 37) = "false"
        Target.Offset(, 38) = "false"
    End If
Case 17
  Target = UCase(Target)
  Target = Left(Target, 4) & "-" & Mid(Target, 5, 2) & "-" & Mid(Target, 7, 3) & Mid(Target, 10, 2) & ":" & Mid(Target, 12, 2) & ":" & Mid(Target, 14, 2) & Right(Target, 1)
Case Else
 Target = Cells(Range("F17:F22").Find(Target.Value).Row, 2)
End Select


Application.EnableEvents = True
End If
End Sub
 
Zet de eigenschap van de cel handmatig op tekst, of de blauwe regel toevoegen.
Code:
[COLOR=#0000ff] target.offset(, 13).numberformat = "@"[/COLOR]
 Target.Offset(, 13) = "false"

Of een apostrof ertussen.
Code:
Target.Offset(, 13) = "[SIZE=4][COLOR=#ff0000]'[/COLOR][/SIZE]false"
 
Harry hartelijk dank voor je hulp, het werkt inderdaad de taal is aangepast.
Ik krijg alleen als ik in vak B30 een ordernummer wil toevoegen een foutmelding in de code in oranje. heeft dat iets te maken met kolom2? Ikheb ook geprobeerd om de range aan te passen van B17:F17. maar helaas


Code:
Private Sub Worksheet_Change(ByVal Target As Range)
If Intersect(Target, Range("H30:H36,J30:K36,AG30:AH36,A30:A36,C30:C36,E30:G36,N30:N36,AB30:AB36,AL30:AM36,Q30:Q36")) Is Nothing And Target.Count > 1 Then Exit Sub
If Target <> "" Then


Application.EnableEvents = False
Select Case Target.Column
Case 1
    If Target = "TRANSACTIE" Then
        Target.Offset(, 2) = "NEWT"
        Target.Offset(, 11) = "NL"
        Target.Offset(, 4) = "7245002Y5R"
        Target.Offset(, 5) = "yes"
        Target.Offset(, 6) = "7245002Y5R"
        Target.Offset(, 13) = "false"
        Target.Offset(, 27) = "NL"
        Target.Offset(, 37) = "false"
        Target.Offset(, 38) = "false"
    End If
Case 17
  Target = UCase(Target)
  Target = Left(Target, 4) & "-" & Mid(Target, 5, 2) & "-" & Mid(Target, 7, 3) & Mid(Target, 10, 2) & ":" & Mid(Target, 12, 2) & ":" & Mid(Target, 14, 2) & Right(Target, 1)
Case Else
 [COLOR=#ff8c00]Target = Cells(Range("F17:F22").Find(Target.Value).Row, 2)[/COLOR]
End Select


Application.EnableEvents = True
End If
End Sub
 
Laatst bewerkt:
Code:
set c = [COLOR=#FF8C00]Range("F17:F22").Find(Target.Value,,xlvalues,xlwhole)
if not c is nothing then c.offset(,-4)[/COLOR]
 
Ik krijg een compileerfout, verwacht einde van de instructie, ik zet de code er even bij voor de volledigheid en heb al enkele opties geprobeerd om de regel op een andere manier te verwerken.

Code:
Private Sub Worksheet_Change(ByVal Target As Range)
If Intersect(Target, Range("H30:H36,J30:K36,AG30:AH36,A30:A36,C30:C36,E30:G36,N30:N36,AB30:AB36,AL30:AM36,Q30:Q36")) Is Nothing And Target.Count > 1 Then Exit Sub
If Target <> "" Then


Application.EnableEvents = False
Select Case Target.Column
Case 1
    If Target = "TRANSACTIE" Then
        Target.Offset(, 2) = "NEWT"
        Target.Offset(, 11) = "NL"
        Target.Offset(, 4) = "7245002Y"
        Target.Offset(, 5) = "yes"
        Target.Offset(, 6) = "7245002Y"
        Target.Offset(, 13) = " 'false"
        Target.Offset(, 27) = "NL"
        Target.Offset(, 37) = " 'false"
        Target.Offset(, 38) = " 'false"
    End If
Case 17
  Target = UCase(Target)
  Target = Left(Target, 4) & "-" & Mid(Target, 5, 2) & "-" & Mid(Target, 7, 3) & Mid(Target, 10, 2) & ":" & Mid(Target, 12, 2) & ":" & Mid(Target, 14, 2) & Right(Target, 1)
Case Else
 Target = Cells(Range("F17:F22").Find(Target.Value).Row, 2)
 Set C = Range("F17:F22").Find(Target.Value, , xlValues, xlWhole) if not c is nothing then c.offset(,-4)
End Select


Application.EnableEvents = True
End If
End Sub
 
Laatst bewerkt:
Wel lief dat je dit allemaal voor een collega wil doen en dat je aardig bent in Excel. Waar zijn spoedcursussen VBA te vinden en wat leer je daar zoal? Blijkbaar niet het debuggen van code. Zie het verschil #52 met jouw eigen code. Het scheelt maar 1 druk op de <Enter> toets.

De conclusie dat je er geen tijd of energie in wil steken is wellicht onjuist. (Vandaag heb ik chinees geleerd via een spoedcursus maar ik kreeg toch bami met saté.)
 
#52 is het reactienummer dus de code van @HSV van vandaag om 18:01 uur. Dit is dus reactienummer #56. Kan je in de blauwe balk zien aan de rechterkant.
 
Code:
set c = Range("F17:F22").Find(Target.Value,,xlvalues,xlwhole)
if not c is nothing then [COLOR=#0000ff]Target = [/COLOR]c.offset(,-4)
 
Moest even eea proberen en deze formule komt dus ipv de andere over de range F17:F22. Volgens mij is het gelukt, moet morgen even op de zaak kijken omdat ik hier met apple werk. Als het zo werkt ben ik heel blij. Ik beloof beterschap maar dit was inderdaad voor mij "iets" te hoog gegrepen en te veel van het goede. Maar ben toch aan het drinken geslagen.

Dank. Ruud
 
Nadat ik nog wat kolommen en rages heb aangepast, werkt het als een zonnetje, mijn collega is superblij, nogmaals hartelijk dank.
 
Laatst bewerkt:
Status
Niet open voor verdere reacties.
Steun Ons

Nieuwste berichten

Terug
Bovenaan Onderaan