{"id":3582,"date":"2022-11-14T12:51:43","date_gmt":"2022-11-14T11:51:43","guid":{"rendered":"https:\/\/e3holding.de\/clean-tek-group-now-under-the-investment-umbrella-of-e3-holding\/"},"modified":"2024-12-12T21:34:05","modified_gmt":"2024-12-12T20:34:05","slug":"clean-tek-group-now-under-the-investment-umbrella-of-e3-holding","status":"publish","type":"post","link":"https:\/\/e3holding.de\/en\/clean-tek-group-now-under-the-investment-umbrella-of-e3-holding\/","title":{"rendered":"Clean-tek Group now under the investment umbrella of E3&nbsp;Holding &nbsp;"},"content":{"rendered":"<script type=\"text\/javascript\">let processScroll = () => {\n\tlet docElem = document.documentElement, \n\t\tdocBody = document.body,\n\t\tscrollTop = docElem['scrollTop'] || docBody['scrollTop'],\n    \tscrollBottom = (docElem['scrollHeight'] || docBody['scrollHeight']) - window.innerHeight - window.innerHeight,\n\t\tscrollPercent = scrollTop \/ scrollBottom * 100 + '%';\n\t\/\/ console.log(scrollTop + ' \/ ' + scrollBottom + ' \/ ' + scrollPercent);\n    document.getElementById(\"progress-bar\").style.setProperty(\"--scrollAmount\", scrollPercent);\t\n}\ndocument.addEventListener('scroll', processScroll);\n\njQuery(function ($) {\n    var project1 = $('.post-sidebar').offset();\n    var $window = $(window);\n    \n    $window.scroll(function() {\n        if ( $window.scrollTop() >= project1.top) {\n            $(\".post-sidebar-inner\").addClass(\"sticky\");\n        }\n        if ( $window.scrollTop() <= project1.top) {\n            $(\".post-sidebar-inner\").removeClass(\"sticky\");\n        }\n    });\t\t\t\n});\n\n\/*!\nName: Reading Time\nDependencies: jQuery\nAuthor: Michael Lynch\nAuthor URL: http:\/\/michaelynch.com\nDate Created: August 14, 2013\nDate Updated: April 30, 2018\nLicensed under the MIT license\n*\/\n\njQuery(function ($) {\n\n\t$.fn.readingTime = function(options) {\n\n\t\t\/\/ define default parameters\n\t\tconst defaults = {\n\t\t\treadingTimeTarget: '.eta',\n\t\t\treadingTimeAsNumber: false,\n\t\t\twordCountTarget: null,\n\t\t\twordsPerMinute: 270,\n\t\t\tround: true,\n\t\t\tlang: 'en',\n\t\t\tlessThanAMinuteString: 'test',\n\t\t\tprependTimeString: '',\n\t\t\tprependWordString: '',\n\t\t\tremotePath: null,\n\t\t\tremoteTarget: null,\n\t\t\tsuccess: function() {},\n\t\t\terror: function() {}\n\t\t};\n\n\t\tconst plugin = this;\n\t\tconst el = $(this);\n\n\t\tlet wordsPerSecond;\n\t\tlet lessThanAMinute;\n\t\tlet minShortForm;\n\n\t\tlet totalWords;\n\t\tlet totalReadingTimeSeconds;\n\n\t\tlet readingTimeMinutes;\n\t\tlet readingTimeSeconds;\n\t\tlet readingTime;\n\t\tlet readingTimeObj;\n\n\t\t\/\/ merge defaults and options\n\t\tplugin.settings = $.extend({}, defaults, options);\n\n\t\t\/\/ define vars\n\t\tconst s = plugin.settings;\n\n\t\tconst setTime = function(o) {\n\n\t\t\tif(o.text !== '') {\n\t\t\t\tif (s.lang == \"zh\") {\n\t\t\t\t\tlet text = o.text.trim();\n\t\t\t\t\t\/\/ step 1: count the number of Chinese characters\n\t\t\t\t\tconst charArray = text.match(\/[\\u4e00-\\u9fa5]\/g);\n\t\t\t\t\tlet charCount = 0;\n\t\t\t\t\tif (charArray != null) {\n\t\t\t\t\t\tcharCount = charArray.length;\n\t\t\t\t\t}\n\t\t\t\t\t\/\/ step 2: replace all the Chinese characters with blank\n\t\t\t\t\ttext = text.replace(\/[\\u4e00-\\u9fa5]\/g, \" \");\n\t\t\t\t\t\/\/ step 3:replace newlines with blank\n\t\t\t\t\ttext = text.replace(\/[\\r\\n]\/g, \" \");\n\t\t\t\t\t\/\/ step 4:replace special characters with blank\n\t\t\t\t\ttext = text.replace(\/\\W+\/g, \" \");\n\t\t\t\t\t\/\/ step 5: count the number of total English words\n\t\t\t\t\tconst totalEnWords = text.trim().split(\/\\s+\/g).length;\n\t\t\t\t\ttotalWords = totalEnWords + charCount;\n\t\t\t\t} else {\n\t\t\t\t\t\/\/split text by spaces to define total words\n\t\t\t\t\ttotalWords = o.text.trim().split(\/\\s+\/g).length;\n\t\t\t\t}\n\n\t\t\t\t\/\/define words per second based on words per minute (s.wordsPerMinute)\n\t\t\t\twordsPerSecond = s.wordsPerMinute \/ 60;\n\n\t\t\t\t\/\/define total reading time in seconds\n\t\t\t\ttotalReadingTimeSeconds = totalWords \/ wordsPerSecond;\n\n\t\t\t\t\/\/ define reading time\n\t\t\t\treadingTimeMinutes = Math.floor(totalReadingTimeSeconds \/ 60);\n\n\t\t\t\t\/\/ define remaining reading time seconds\n\t\t\t\treadingTimeSeconds = Math.round(totalReadingTimeSeconds - (readingTimeMinutes * 60));\n\n\t\t\t\t\/\/ format reading time\n\t\t\t\treadingTime = `${readingTimeMinutes}:${readingTimeSeconds}`;\n\t\t\t\t\/\/ if s.round\n\t\t\t\tif(s.round) {\n\n\t\t\t\t\t\/\/ if minutes are greater than 0\n\t\t\t\t\tif(readingTimeMinutes > 0) {\n\n\t\t\t\t\t\t\/\/ set reading time by the minute\n\t\t\t\t\t\t$(s.readingTimeTarget).text(s.prependTimeString + readingTimeMinutes + ((!s.readingTimeAsNumber) ? ' ' + minShortForm : ''));\n\n\t\t\t\t\t} else {\n\n\t\t\t\t\t\t\/\/ set reading time as less than a minute\n\t\t\t\t\t\t$(s.readingTimeTarget).text((!s.readingTimeAsNumber) ? s.prependTimeString + lessThanAMinute : readingTimeMinutes);\n\t\t\t\t\t}\n\n\t\t\t\t} else {\n\n\t\t\t\t\t\/\/ set reading time in minutes and seconds\n\t\t\t\t\t$(s.readingTimeTarget).text(s.prependTimeString + readingTime);\n\t\t\t\t}\n\n\t\t\t\t\/\/ if word count container isn't blank or undefined\n\t\t\t\tif(s.wordCountTarget !== '' && s.wordCountTarget !== undefined) {\n\n\t\t\t\t\t\/\/ set word count\n\t\t\t\t\t$(s.wordCountTarget).text(s.prependWordString + totalWords);\n\t\t\t\t}\n\n\t\t\t\treadingTimeObj = {\n\t\t\t\t\twpm: s.wordsPerMinute,\n\t\t\t\t\twords: totalWords,\n\t\t\t\t\teta: {\n\t\t\t\t\t\ttime: readingTime,\n\t\t\t\t\t\tminutes: readingTimeMinutes,\n\t\t\t\t\t\tseconds: totalReadingTimeSeconds\n\t\t\t\t\t}\n\t\t\t\t};\n\n\t\t\t\t\/\/ run success callback\n\t\t\t\ts.success.call(this, readingTimeObj);\n\n\t\t\t} else {\n\n\t\t\t\t\/\/ run error callback\n\t\t\t\ts.error.call(this, {\n\t\t\t\t\terror: 'The element does not contain any text'\n\t\t\t\t});\n\t\t\t}\n\t\t};\n\n\t\t\/\/ if no element was bound\n\t\tif(!this.length) {\n\n\t\t\t\/\/ run error callback\n\t\t\ts.error.call(this, {\n\t\t\t\terror: 'The element could not be found'\n\t\t\t});\n\n\t\t\t\/\/ return so chained events can continue\n\t\t\treturn this;\n\t\t}\n\n\t\t\/\/ Use switch instead of ifs\n\t\tswitch (s.lang) {\n\t\t\t\/\/ if s.lang is Arabic\n\t\t\tcase 'ar':\n        lessThanAMinute = s.lessThanAMinuteString || \"\u0623\u0642\u0644 \u0645\u0646 \u062f\u0642\u064a\u0642\u0629\";\n        minShortForm = '\u062f\u0642\u064a\u0642\u0629';\n        break;\n\t\t\t\/\/ if s.lang is Czech\n\t\t\tcase 'cz':\n        lessThanAMinute = s.lessThanAMinuteString || \"M\u00e9n\u011b ne\u017e minutu\";\n        minShortForm = 'min';\n        break;\n\t\t\t\/\/ if s.lang is Danish\n\t\t\tcase 'da':\n        lessThanAMinute = s.lessThanAMinuteString || \"Mindre end et minut\";\n        minShortForm = 'min';\n        break;\n\t\t\t\/\/ if s.lang is German\n      case 'de':\n        lessThanAMinute = s.lessThanAMinuteString || \"Weniger als eine Minute\";\n        minShortForm = 'min';\n        break;\n\t\t\t\/\/ if s.lang is Spanish\n      case 'es':\n        lessThanAMinute = s.lessThanAMinuteString || \"Menos de un minuto\";\n        minShortForm = 'min';\n        break;\n\t\t\t\/\/ if s.lang is French\n      case 'fr':\n        lessThanAMinute = s.lessThanAMinuteString || \"Moins d'une minute\";\n        minShortForm = 'min';\n        break;\n\t\t\t\/\/ if s.lang is Hungarian\n      case 'hu':\n        lessThanAMinute = s.lessThanAMinuteString || \"Kevesebb mint egy perc\";\n        minShortForm = 'perc';\n        break;\n\t\t\t\/\/ if s.lang is Icelandic\n      case 'is':\n        lessThanAMinute = s.lessThanAMinuteString || \"Minna en eina m\u00edn\u00fatu\";\n        minShortForm = 'min';\n        break;\n\t\t\t\/\/ if s.lang is Italian\n      case 'it':\n        lessThanAMinute = s.lessThanAMinuteString || \"Meno di un minuto\";\n        minShortForm = 'min';\n        break;\n\t\t\t\/\/ if s.lang is Dutch\n      case 'nl':\n        lessThanAMinute = s.lessThanAMinuteString || \"Minder dan een minuut\";\n        minShortForm = 'min';\n        break;\n\t\t\t\/\/ if s.lang is Norwegian\n      case 'no':\n        lessThanAMinute = s.lessThanAMinuteString || \"Mindre enn ett minutt\";\n        minShortForm = 'min';\n        break;\n\t\t\t\/\/ if s.lang is Polish\n      case 'pl':\n        lessThanAMinute = s.lessThanAMinuteString || \"Mniej ni\u017c minut\u0119\";\n        minShortForm = 'min';\n        break;\n\t\t\t\/\/ if s.lang is Russian\n      case 'ru':\n        lessThanAMinute = s.lessThanAMinuteString || \"\u041c\u0435\u043d\u044c\u0448\u0435 \u043c\u0438\u043d\u0443\u0442\u044b\";\n        minShortForm = '\u043c\u0438\u043d';\n        break;\n\t\t\t\/\/ if s.lang is Slovak\n      case 'sk':\n        lessThanAMinute = s.lessThanAMinuteString || \"Menej ne\u017e min\u00fatu\";\n        minShortForm = 'min';\n        break;\n\t\t\t\/\/ if s.lang is Swedish\n      case 'sv':\n        lessThanAMinute = s.lessThanAMinuteString || \"Mindre \u00e4n en minut\";\n        minShortForm = 'min';\n        break;\n\t\t\t\/\/ if s.lang is Turkish\n      case 'tr':\n        lessThanAMinute = s.lessThanAMinuteString || \"Bir dakikadan az\";\n        minShortForm = 'dk';\n        break;\n\t\t\t\/\/ if s.lang is Ukrainian\n      case 'uk':\n        lessThanAMinute = s.lessThanAMinuteString || \"\u041c\u0435\u043d\u0448\u0435 \u0445\u0432\u0438\u043b\u0438\u043d\u0438\";\n        minShortForm = '\u0445\u0432';\n        break;\n\t\t\t\/\/ if s.lang is Greek\n\t\t\tcase 'el':\n        lessThanAMinute = s.lessThanAMinuteString || '\u039b\u03b9\u03b3\u03cc\u03c4\u03b5\u03c1\u03bf \u03b1\u03c0\u03cc \u03bb\u03b5\u03c0\u03c4\u03cc';\n        minShortForm = '\u03bb\u03b5\u03c0\u03c4\u03ac';\n        break;\n            \/\/ if s.lang is Portuguese\n            case 'pt-BR':\n        lessThanAMinute = s.lessThanAMinuteString || 'Menos de um minuto';\n        minShortForm = 'min';\n\t\tbreak;\n\t\t\t\/\/ if s.lang is Korean\n\t\t\tcase 'kr':\n\t\tlessThanAMinute = s.lessThanAMinuteString || '1\ubd84 \uc774\ud558';\n\t\tminShortForm = '\ubd84';\n        break;\n\t\t\t\/\/ default s.lang in english\n\t\t\tdefault:\n        lessThanAMinute = s.lessThanAMinuteString || 'Less than a minute';\n        minShortForm = 'min';\n    }\n\n\t\t\/\/ for each element\n\t\tel.each(function(index) {\n\n\t\t\t\/\/ if s.remotePath and s.remoteTarget aren't null\n\t\t\tif(s.remotePath != null && s.remoteTarget != null) {\n\n\t\t\t\t\/\/ get contents of remote file\n\t\t\t\t$.get(s.remotePath, function(data) {\n\t\t\t\t\tlet wrapper = document.createElement('div');\n\n\t\t\t\t\twrapper.innerHTML = data;\n\n\t\t\t\t\t\/\/ set time using the remote target found in the remote file\n\t\t\t\t\tsetTime({\n\t\t\t\t\t\ttext: $(wrapper).find(s.remoteTarget).text()\n\t\t\t\t\t});\n\t\t\t\t});\n\n\t\t\t} else {\n\n\t\t\t\t\/\/ set time using the targeted element\n\t\t\t\tsetTime({\n\t\t\t\t\ttext: el.text()\n\t\t\t\t});\n\t\t\t}\n\t\t});\n\n\t\treturn true;\n\t}\n});\n\njQuery(function ($) {\n\n\t$('#post-content').readingTime({\n\t\treadingTimeAsNumber: true,\n\t\twordsPerMinute: 200,\n\t\tround: false,\n\t\tlang: 'de',\n\t\t\n        success: function(data) {\n\t\t\tconsole.log(data);\n\t\t},\n\t\terror: function(data) {\n\t\t\tconsole.log(data.error);\n\t\t\t$('.reading-time').remove();\n\t\t}\n\t});\n});\n\n<\/script><section id=\"post-content\" class=\"custom-block section-post-content pt-medium pb-medium bg-white text-body\"><div class=\"wrapper-wide\"><div class=\"section-inner\"><div class=\"row g-0\"><div class=\"col-sm-20 offset-sm-2 col-lg-5 offset-lg-2 order-lg-2\"><div class=\"post-sidebar\"><div class=\"post-sidebar-inner pb-medium pb-lg-0\"><\/div><\/div><\/div><div class=\"col-sm-20 offset-sm-2 col-lg-12 offset-lg-2 order-lg-1\"><div id=\"post-content\" class=\"pb-medium\"><div class=\"acf-innerblocks-container\">\n\n<p>Die E3 Holding SE hat 100% an der clean-tek Gruppe zum 20. Oktober 2022 erworben. Die clean-tek Gruppe ist ein f\u00fchrender Spezialist f\u00fcr die Projektierung, Fertigung und Montage von Reinr\u00e4umen und steht f\u00fcr erstklassige Reinraumtechnik aus eigener Fertigung.\u00a0<\/p>\n\n\n\n<p>Clean-tek is a leading manufacturer of modern and efficient clean room systems; whilst its core markets are Germany and Switzerland, the company, which is now under the investment umbrella of E3 Holding, also services international clients. Its principal sites are located in Renningen (Germany) and Basel (Switzerland). Clean-tek\u2019s product offering includes wall, ceiling and door systems, as well as equipment such as laminar flow modules, pass-throughs, personnel and material locks, decontamination showers and weighing booths \u2013 all manufactured in-house.\u00a0<\/p>\n\n\n\n<p>The modular design of Clean-tek\u2019s clean rooms allows for optimal adaptation to any spatial requirement, along with simple, fast assembly, conversions and extensions. Every Clean-tek clean room complies with GMP, FDA and ISO requirements, and is suitable for all types of hygienic production.<\/p>\n\n\n\n<p>Clean-tek has been an established supplier of comprehensive high-quality clean room system solutions for 30\u00a0years, with a strong focus on the pharmaceutical sector. The company was founded in Renningen in 1986 by Albrecht Ritter, father of the current Managing Director Felix Ritter, and employs around 65\u00a0staff members. For 2022, the company expects a turnover of approx. \u20ac22\u00a0million.\u00a0<\/p>\n\n\n\n<p>Looking ahead, Clean-tek\u2019s target market offers excellent opportunities to continue its growth trajectory.\u00a0The market for clean room technology is driven by investments from the biotech, pharmaceutical and semiconductor industries, along with an ever-growing number of hygiene and manufacturing standards in other industries such as cosmetics and food. All these industries post average growth rates of 5-7% p.a.\u00a0<\/p>\n\n\n<aside class=\"section-anchor\" id=\"anchor-block_ad142df09b3f0dde8b8e0a3262f0927b\"><\/aside><section class=\"custom-block section-quote text-left pt-medium pb-medium quote-image-bottom\" id=\"block_ad142df09b3f0dde8b8e0a3262f0927b\"><div class=\"section-inner\"><div class=\"wrapper-wide\"><div class=\"row g-0\"><div class=\"quote-content align-self-center mb-3 mb-lg-0col-24 text-center ps-sm-3 pe-sm-3 order-12 order-lg-12 parallax-section-content\"><span class=\"quote-icon\"><?xml version=\"1.0\" encoding=\"utf-8\"?>\n<!-- Generator: Adobe Illustrator 27.4.0, SVG Export Plug-In . SVG Version: 6.00 Build 0)  -->\n<svg version=\"1.1\" id=\"Ebene_1\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" xmlns:xlink=\"http:\/\/www.w3.org\/1999\/xlink\" x=\"0px\" y=\"0px\"\n\t viewBox=\"0 0 84 64.3\" style=\"enable-background:new 0 0 84 64.3;\" xml:space=\"preserve\">\n<g>\n\t<path d=\"M31.2,5.9c1.9,4.8,2.9,10.1,2.9,15c0,22.2-15.2,36.3-31.3,42.5L0.5,58c11.2-6.1,16.8-10.4,21.9-21.9l-10.1-5.9\n\t\tc-6.7-4.3-9.6-9.6-9.6-14.4C2.6,6.7,9,0.5,17.8,0.5C22.4,0.5,26.6,1.6,31.2,5.9z M80.6,5.9c1.9,4.8,2.9,10.1,2.9,15\n\t\tc0,22.2-15.2,36.3-31.2,42.5L49.9,58c11.2-6.1,16.8-10.4,21.9-21.9l-10.1-5.9C55,25.9,52,20.6,52,15.8c0-9.1,6.4-15.2,15.2-15.2\n\t\tC71.8,0.5,76.1,1.6,80.6,5.9z\"\/>\n<\/g>\n<\/svg>\n<\/span><p class=\"d-block mb-0 ms-auto me-auto lh-1-2 h4 mb-5\">My goal was to team up with experts to guide the transformation of our family business into a mid-sized industrial firm. E3 Holding&rsquo;s approach to business &ndash; making a company fit for the future, holding it for the long term, reading the signs of the time and integrating ESG factors &ndash; resonated with me. Plus, the relationship with Mr&nbsp;Weddrien and Mr&nbsp;Rieder is excellent.<\/p><div class=\"quote-image align-self-center order-1 order-lg-1\"><div class=\"image-container image-square image-position-top image-rounded\"><img decoding=\"async\" title=\"cleantek_felix-ritter\" alt=\"https:\/\/e3holding.de\/wordpress\/wp-content\/uploads\/2022\/11\/cleantek_felix-ritter.jpg\" class=\"img-fluid\" src=\"https:\/\/e3holding.de\/wordpress\/wp-content\/uploads\/2022\/11\/cleantek_felix-ritter.jpg\"><\/div><\/div><aside class=\"small\"><p class=\"quote-name mb-0 mt-1\"><b>Felix Ritter<\/b><\/p><p class=\"quote-desc mb-0\">Managing Director, Clean-tek<\/p><\/aside><\/div><\/div><\/div><\/div><\/section>\n\n\n<p>Clean-tek is led by an experienced team, consisting of current Managing Directors Felix Ritter and Holger Lautenschlager. The transaction was financed with Nord\/LB Hanover.<\/p>\n\n\n\n<p>Clean-tek Group\u2019s excellent positioning in a resilient and high-growth market, coupled with additional growth potential via further operational development, for example in the company\u2019s ongoing digital transformation, convinced E3 Holding of this attractive investment.\u00a0<\/p>\n\n\n\n<p>\u00a0<\/p>\n\n<\/div><\/div><div class=\"tag-list-container pt-3\"><div class=\"tag-list\"><p class=\"mb-1 small\">Related topics<\/p><ul class=\"tag-list small\"><li><a href=\"https:\/\/e3holding.de\/en\/tag\/clean-tek-en\/\" rel=\"tag\">Clean-tek<\/a><\/li><li><a href=\"https:\/\/e3holding.de\/en\/tag\/e3-holding-ag\/\" rel=\"tag\">E3 Holding SE<\/a><\/li><li><a href=\"https:\/\/e3holding.de\/en\/tag\/group-companies\/\" rel=\"tag\">Group companies<\/a><\/li><\/ul><\/div><\/div><\/div><\/div><\/div><\/div><\/section>","protected":false},"excerpt":{"rendered":"","protected":false},"author":9,"featured_media":3379,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[124],"tags":[47,36,37],"class_list":["post-3582","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-investment-en","tag-clean-tek-en","tag-e3-holding-ag","tag-group-companies"],"acf":[],"_links":{"self":[{"href":"https:\/\/e3holding.de\/en\/wp-json\/wp\/v2\/posts\/3582","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/e3holding.de\/en\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/e3holding.de\/en\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/e3holding.de\/en\/wp-json\/wp\/v2\/users\/9"}],"replies":[{"embeddable":true,"href":"https:\/\/e3holding.de\/en\/wp-json\/wp\/v2\/comments?post=3582"}],"version-history":[{"count":6,"href":"https:\/\/e3holding.de\/en\/wp-json\/wp\/v2\/posts\/3582\/revisions"}],"predecessor-version":[{"id":5424,"href":"https:\/\/e3holding.de\/en\/wp-json\/wp\/v2\/posts\/3582\/revisions\/5424"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/e3holding.de\/en\/wp-json\/wp\/v2\/media\/3379"}],"wp:attachment":[{"href":"https:\/\/e3holding.de\/en\/wp-json\/wp\/v2\/media?parent=3582"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/e3holding.de\/en\/wp-json\/wp\/v2\/categories?post=3582"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/e3holding.de\/en\/wp-json\/wp\/v2\/tags?post=3582"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}