MENU
 
Home
Nieuwsbrief
GC in de media
SiteMap
 
 
Tips en Tricks
Excel
Word
Photoshop
PowerPoint
Surf Tips
Gmail
Android
iPad
Excel ClipTips
 
cursus Office 2016
Access
Excel
Outlook
PowerPoint
Word
 
cursus Office 2013
Excel
PowerPoint
Word
Nieuw in Excel 2013
Nieuw in Word 2013
Nieuw in PowerPoint 2013
 
cursus Office 2010
Access
Nieuw in Excel 2010
Excel automatiseren
Excel
OneNote
Outlook
PowerPoint
Word
 
cursus Office 2007
Access
Excel
Outlook
PowerPoint
Publisher
Visio
Word
 
cursus Office
2000-2002-2003-XP
Access
Excel
PowerPoint
Outlook
Word
 
cursus Photoshop
CC -3D
Animatie
CS6
CS5
CS4
CS2 - CS3
Lightroom 3
Elements 6
Mask Pro
Nik Collection
 
cursus Dreamweaver
CS3
 
cursus Illustrator
CS4
 
cursus Flash
CS4
 
cursus Fireworks
CS4
 
cursus Paint Shop Pro
X en X2
 
cursus Premiere
Elements 7-8
 
cursus Joomla
Joomla 1.5
 
Sociale Netwerk sites
Facebook
LinkedIn
Twitter
 
iPad
Apps
 
Diversen
Celtx
CSS
DropBox
Firefox 3.6
GIMP
Internet Explorer 9
LIME
Linux
OpenSUZE
PREZI
ProShow Producer
YouTube
 
cursus Google
Agenda
Analytics
Gmail
Zoeken
Picasa 3
SketchUp
Chrome
Street View
 
cursus Windows
Live Movie Maker
Windows 10
Windows 8
Windows 7
XP
Vista
 
cursus Office '97
Word
Excel
 
 

 

Tips Excel   go to : Index
       

Tip 255

   
Excel Tip
 

Samenvoegen Bereik

Dat je zelf een functie kunt maken in Excel, had ik jullie reeds uitgelegd in Les 17 van de cursus Excel Automatiseren.
In deze tip toon ik jullie hoe je een functie schrijft, die de inhoud van een Bereik samenvoegt.

Wens je het bestand uit deze tip te ontvangen, klik hier.

Dat je de inhoud van cellen kunt samenvoegen met de functie TEKST.SAMENVOEGEN zal iedereen wel weten. Dat het een hele opgave is deze formule in te typen, vooral dan wanneer er een pak cellen moeten worden samengevoegd, zal iedereen ook wel weten.

Dus is het misschien makkelijker wanneer we hiervoor een functie aanmaken.
Deze functie moet beschikken over twee argumenten, één een bereik, twee een seperator.
Of het bereik nu verticaal is (1), of horizontaal (2), dat mag geen verschil maken, een bereik is een bereik.
De separator zal de inhoud van de verschillende cellen separeren, met het karakter dat jij ingeeft.

 
Om een functie te maken moeten we de VBA-editor openen.
Open de VBA-editor en maak een nieuwe module.
Hiervoor klik je "Invoegen" en kies je "Module".
Typ onderstaande VBA-code in de VBA-editor
 
Ik heb deze hier nog even uitgetypt, maar in elk geval, diegenen die het bestand hebben gevraagd, hebben meteen ook de code.
Function samber(myrange As Range, mySep As String) As String
Dim CurrentRange As String
Dim r As String
CurrentRange = ""
For Each cell In myrange
If cell <> "" Then
r = cell & mySep
CurrentRange = CurrentRange & r
End If
Next cell
CurrentRange = Left(CurrentRange, Len(CurrentRange) - Len(mySep))
samber = CurrentRange
End Function
 
Ik leg de VBA-code even uit.
Function samber
Hier geef ik de functie een naam. Welke naam dat maakt niet uit, ik kies voor samber welke een afkorting is voor "samenvoegen bereik", maar geef jij deze liever de naam van je schoonmoeder, je doet maar.
 
(myrange As Range, mySep As String
de functie moet twee argumenten (een bereik, een separator).
 
Vervolgens declareer ik twee variabelen.
Dim CurrentRange As String
Dim r As String
 
Vervolgens bepalen we dat het bereik leeg is
CurrentRange = ""
 
For Each cell In myrange
Voor elke cel in het bereik myrange
 
Doe het volgende
If cell <> "" Then
r = cell & mySep
CurrentRange = CurrentRange & r
End If
Dus als de cel niet leeg is dan wordt de variabele r de iinhoud van de cel plus de seperator
 
Wanneer er aan de voorwaarde is voldaan, doe het volgende
CurrentRange = Left(CurrentRange, Len(CurrentRange) - Len(mySep))
samber = CurrentRange
De code CurrentRange = Left(CurrentRange, Len(CurrentRange) - Len(mySep)) let erop dat de seperator zich niet herhaald na de laatste celinhoud.
 

We gaan de zelfgemaakte functie even testen.

Typ het is gelijk aan teken, en typ sam. Zoals je ziet heeft Excel de functie al gevonden.

 

Door de sneltoetscombinatie Ctrl + Shift + A te klikken zie je de argumenten voor deze functie.

Selecteer het bereik, typ punt komma, en typ het tweede argument, wat meestal een spatie zal zijn.
Klik Enter.

 
Alle cellen uit het bereik zijn samengevoegd.
 
Typ je streepjes als seperator, dan worden deze ingevoegd tussen de woorden, maar niet na het laatste woord.
Dat is wat deze regel CurrentRange = Left(CurrentRange, Len(CurrentRange) - Len(mySep)) doet.
 
GratisCursus.be denkt aan jullie.

Index
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

All courses now available in English:
www.swotster.com

copyright © 2012 - Swotster Ltd - Hong Kong - China