VBA macro afficher nom de cellule dans colonne à  côté

Voici une petite macro qui permet d’afficher les noms de cellule d’une colonne dans une autre colonne.

Pratique pour le développement.

Function listeNames(zone, decalagex)
NumLigne = 1
'dans la ligne ci-dessous, indiquez bon range
For Each cellule In ThisWorkbook.Sheets(2).Range(zone).Cells
On Error Resume Next

Dim Ok As Boolean
Dim i As Integer
Ok = False

Set nms = ActiveWorkbook.Names
For i = 1 To nms.Count
'MsgBox(nms(i).Name)
If nms(i).RefersToRange.Address = cellule.Address Then Ok = True
Next

If Ok = True Then
Nom_Cell = cellule.Name.Name
'MsgBox (Nom_Cell)
'dans la ligne ci-dessous modifier le 0,1 par le x,y de deplacement par rapport a la cellule active
cellule.Offset(0, decalagex) = Nom_Cell
Nom_Cell = ""
End If

NumLigne = NumLigne + 1
Next cellule

End Function

Public Sub exec()
    Call listeNames("C1:C90", 2)
    Call listeNames("I51:I62", 2)
    Call listeNames("S53:S77", 2)
    Call listeNames("H15:H22", 1)

End Sub

Installation d’un serveur ubuntu lamp

Installer ubuntu normalement (ne pas faireles pré-installations proposé (ex : lamp))

 

Activer le compte root

sudo passwd root

Installer ssh

apt-get install ssh

Mettre une IP statique

nano /etc/network/interfaces

Modifier comme suit :

# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).
# The loopback network interface
auto lo
iface lo inet loopback
# The primary network interface
auto eth0
iface eth0 inet static
address 192.168.1.62
netmask 255.255.255.0
network 192.168.1.0
broadcast 192.168.1.255
gateway 192.168.1.1

redémarrer le service réseau :

/etc/init.d/networking restart

Installer le LAMP

apt-get install apache2 php5 mysql-server libapache2-mod-php5 php5-mysql php5-sqlite phpmyadmin

Créer un utilisateur php (ex : phpuser)

Personnellement je me crée un utilisateur phpuser qui appartient au groupe www-data et qui à  le droit de se connecter en ssh.
Ensuite pour développer je me connecte avec ce compte il suffit que dans le www
– les dossiers soient en chmod 775 au lieu de 755
– les fichiers soient en chmod 664 au lieu de 644
on résout ainsi les problèmes de droit d’exécution des fichiers tout en maintenant la sécurité

PROCEDURE :

#créer le user :

useradd phpuser

#Ajouter le user dans le groupe www-data :

usermod -a -G www-data phpuser

#Pour vérifier les groupes du user :

groups phpuser

#forcer le user phpuser à  écrire en 775/664 plutôt que 755/644

umask 002 >> /home/phpuser/.profile

#forcer le user www-data à  écrire en 775/664 plutôt que 755/644

umask 002 >> /etc/apache2/envvars

#on se déplace vers /var

cd /var/

#on change le groupe du www

chown www-data:www-data www
chown -R www-data:www-data www/*

#On positionne le GID bit : les fichiers et dossiers créés appartiendront au groupe www-data

chmod g+s www

on met à  jour les droits sur les fichiers & dossier existant s’il y en a

chmod -R g+w www/*
find www -type d -exec chmod g+s {}  \;

OPTIONNEL : ajout du de votre certificat ssl pour le user

mkdir /home/phpuser/.ssh
nano /home/phpuser/.ssh/authorized_keys

#copier la clé publique

chown -R phpuser:phpuser /home/phpuser/.ssh/ /home/phpuser/.ssh/*
chmod 700 /home/phpuser/.ssh/

Mysql : convertir un select en csv

Actuce

Cette astuce permet de générer un fichier csv directement à  partir d’une requête mysql.

SELECT champ1, champ3, champ6, champ7 FROM matable INTO OUTFILE '/var/www/replication/transfert.csv' FIELDS ESCAPED BY '' TERMINATED BY ';';

Petit bémol les champs vide sont remplacé par NULL systématiquement.

Perso j’utilise généralement cette astuce dans des bash donc derrière je fais un rechercher/remplacer pour virer les NULL du type :

#conversion des champs NULL en espace
sed -i 's/NULL/ /g'  /var/www/replication/transfert.csv